@charset "UTF-8";
/* =========================================================
   PP TÊXTEIS — PRODUCTION STYLESHEET
   Audited against every root HTML page and every local JS file those pages load.
   Runtime-generated markup and JS state classes were included in the audit.
   Rule order is intentionally preserved because the CSS cascade depends on it.
========================================================= */

:root {
--white: #ffffff;
--black: #000000;
--primary: #A58667;
--white-64: #FFFFFFA3;
--white-16: #FFFFFF29;
/* Custom */
--pp-font-body: "URWGeometricMedium", "Figtree", Arial, sans-serif;
--pp-font-heading: "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
display: block;
}

html {
margin-right: 0 !important;
  scroll-behavior: smooth;
}

* {
margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
font-family: "Figtree", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: var(--white);
  background-color: var(--black);
}

body::-webkit-scrollbar {
width: 4px;
}

body::-webkit-scrollbar-thumb {
cursor: grab;
  background-color: var(--primary);
}

img {
max-width: 100%;
  height: auto;
  transform: scale(1);
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
}

ul,
li {
list-style-type: none;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}

table {
width: 100%;
  overflow-x: auto;
  table-layout: auto;
  border-collapse: collapse;
}

td,
th {
padding: 12px 16px;
}

@media (min-width: 1200px) {
  td,
  th {
padding: 16px 24px;
  }
}

svg path {
-webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

button {
background: transparent;
  border: 0;
  display: inline-flex;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

select,
option {
all: unset;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: transparent;
  border: none;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
}

:-ms-input-placeholder {
color: var(--secondary-2);
}

b,
strong {
font-weight: bolder;
}

video {
width: 100%;
  height: 100%;
  object-fit: cover;
}

a {
-webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-decoration: none;
  cursor: pointer;
  display: inline-block;
  font-family: "Figtree", sans-serif;
  color: var(--text);
}

a:focus,
a:hover {
outline: 0;
}

p {
display: block;
}

html,
body {
overflow-x: hidden;
}

#wrapper {
overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
font-family: "Figtree", sans-serif;
  text-rendering: optimizeLegibility;
  font-weight: 500;
  margin-bottom: 0;
  letter-spacing: 0;
}

h1 {
font-size: clamp(36px, 5vw, 64px);
  line-height: clamp(44px, 5.5vw, 68px);
}

h2 {
font-size: clamp(32px, 4.5vw, 56px);
  line-height: clamp(40px, 5vw, 64px);
}

h3 {
font-size: clamp(28px, 4vw, 48px);
  line-height: clamp(36px, 4.5vw, 56px);
}

h4 {
font-size: clamp(26px, 3.5vw, 40px);
  line-height: clamp(34px, 4vw, 48px);
}

h5 {
font-size: clamp(22px, 3vw, 32px);
  line-height: clamp(28px, 3.5vw, 40px);
}

h6 {
font-size: clamp(20px, 2.5vw, 24px);
  line-height: clamp(26px, 3vw, 32px);
}

.row {
margin-right: -6px;
  margin-left: -6px;
}

.row > * {
padding-left: 6px;
  padding-right: 6px;
}

.container {
position: relative;
  margin-left: auto;
  margin-right: auto;
  padding-right: 15px;
  padding-left: 15px;
  width: 1326px;
  max-width: 100%;
}

header {
position: sticky;
  z-index: 100;
  transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

header.header-sticky {
background-color: var(--black);
  box-shadow: 0 0 10px rgba(255, 255, 255, 0.15);
}

/* -- Menu Mobile -- */

@keyframes rotate {
0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes iconBounce {
0%, 100%, 20%, 50%, 80% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-8px);
    -ms-transform: translateY(-8px);
    transform: translateY(-8px);
  }
  60% {
    -webkit-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    transform: translateY(-5px);
  }
}

.effectFade {
opacity: 0;
}

.slick-slide,
.slick-track,
.effectFade {
will-change: transform, opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

form {
position: relative;
  z-index: 30;
}

form textarea,
form input[type=text],
form input[type=password],
form input[type=date],
form input[type=time],
form input[type=number],
form input[type=email],
form input[type=url],
form input[type=search],
form input[type=tel],
form input[type=color] {
outline: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  width: 100%;
  padding: 16px 12px 3px 0px;
  border: 0;
  background-color: transparent;
  border-bottom: 1px solid var(--white-16);
  color: var(--white);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

form textarea::placeholder,
form input[type=text]::placeholder,
form input[type=password]::placeholder,
form input[type=date]::placeholder,
form input[type=time]::placeholder,
form input[type=number]::placeholder,
form input[type=email]::placeholder,
form input[type=url]::placeholder,
form input[type=search]::placeholder,
form input[type=tel]::placeholder,
form input[type=color]::placeholder {
color: var(--text-2);
}

form textarea:focus,
form input[type=text]:focus,
form input[type=password]:focus,
form input[type=date]:focus,
form input[type=time]:focus,
form input[type=number]:focus,
form input[type=email]:focus,
form input[type=url]:focus,
form input[type=search]:focus,
form input[type=tel]:focus,
form input[type=color]:focus {
border-color: var(--primary);
}

form button,
form input[type=button],
form input[type=reset],
form input[type=submit] {
background-color: transparent;
  overflow: hidden;
  padding: 0;
}

form textarea {
height: 150px;
  border-radius: 32px;
  resize: none;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
-webkit-appearance: none;
  margin: 0;
}

select {
outline: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  width: 100%;
  padding: 0;
  padding-bottom: 16px;
  padding-left: 16px;
  border: 0;
  background-color: transparent;
  border-bottom: 1px solid var(--white-16);
  color: var(--white-64);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  font-size: 18px;
  letter-spacing: -0.18px;
}

select option {
background-color: var(--black);
  padding-left: 10px;
}

@media (min-width: 576px) {
  .form-cta .nice-select .current {
color: var(--white-64);
    font-size: 18px;
    line-height: 22px;
  }
}

button.animate-btn::after {
background-image: linear-gradient(120deg, rgba(0, 0, 0, 0) 20%, rgba(255, 255, 255, 0.4), rgba(0, 0, 0, 0) 70%);
}

/* ======================================== GLOBAL TEXT SCALE — PP TÊXTEIS ======================================== */

body {
font-size: 18px;
  line-height: 1.65;
}

p,
li,
a,
button,
label,
input,
textarea,
select {
font-size: inherit;
  line-height: 1.65;
}

.nav-link {
font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.08em;
}

/* ======================================== ABOUT HERO - REMOVE BLACK GAP BELOW VIDEO apenas nesta secção/página ======================================== */

/* ========================================================= ABOUT — HERO OPTION 1 — CLEAN FIT ========================================================= */

.pp-about-hero-op1 .container {
position:relative;
  z-index:3;
  width:1326px;
  max-width:100%;
}

#goTop {
position: fixed;
  padding: 0;
  bottom: 40px;
  right: 20px;
  width: 38px;
  height: 38px;
  background: var(--black);
  color: var(--white);
  font-size: 20px;
  text-align: center;
  line-height: 50px;
  cursor: pointer;
  border: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease;
  box-shadow: 0px 4px 20px 0px rgba(255, 255, 255, 0.1019607843);
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

#goTop .border-progress {
position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  border: 1px solid var(--primary);
  mask-image: conic-gradient(var(--primary) var(--progress-angle, 0deg), transparent 0);
  -webkit-mask-image: conic-gradient(var(--primary) var(--progress-angle, 0deg), transparent 0);
  content: "";
  z-index: 1;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

#goTop.show {
opacity: 1;
  visibility: visible;
}

#goTop .icon {
font-size: 12px;
  color: var(--primary);
  transform: rotate(-90deg);
  aspect-ratio: 1;
}

#goTop .ic-wrap {
-webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  animation: iconBounce 2s linear 0s infinite;
  display: flex;
}

#goTop:hover {
box-shadow: 0 8px 16px rgba(0, 0, 0, 0.5);
}

@media (min-width: 992px) {
  #goTop {
right: 40px;
  }
}

/* ======================================== PP PRELOADER V3 ======================================== */

.pp-preloader-v3 {
position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  background:
    radial-gradient(circle at 50% 45%, rgba(165,134,103,0.10) 0%, rgba(165,134,103,0.03) 16%, rgba(0,0,0,0) 36%),
    #050505;
  overflow: hidden;
  opacity: 1;
  visibility: visible;
  transition:
    opacity 0.85s cubic-bezier(0.22, 1, 0.36, 1),
    visibility 0.85s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.85s cubic-bezier(0.22, 1, 0.36, 1);
}

.pp-preloader-v3::before {
content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,0.012) 50%,
      rgba(255,255,255,0) 100%);
  pointer-events: none;
}

.pp-preloader-v3::after {
content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,0.012) 1px, transparent 1px);
  background-size: 100% 4px;
  opacity: 0.28;
  pointer-events: none;
}

.pp-preloader-v3.is-hidden {
opacity: 0;
  visibility: hidden;
  transform: scale(1.02);
}

.pp-preloader-v3__center {
position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-4px);
}

.pp-preloader-v3__orbital {
position: relative;
  width: 240px;
  height: 240px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: scale(0.94);
  animation: ppPreloaderV3Appear 0.9s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.pp-preloader-v3__ring {
position: absolute;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.10);
}

.pp-preloader-v3__ring--outer {
width: 240px;
  height: 240px;
  opacity: 0.36;
}

.pp-preloader-v3__ring--inner {
width: 202px;
  height: 202px;
  border-color: rgba(165,134,103,0.22);
  opacity: 0.5;
}

.pp-preloader-v3__arc {
position: absolute;
  width: 240px;
  height: 240px;
  border-radius: 50%;
  border: 2px solid transparent;
  border-top-color: #a58667;
  border-right-color: #a58667;
  opacity: 0.95;
  transform: rotate(16deg);
  clip-path: inset(0 0 44% 44%);
  animation: ppPreloaderV3ArcRotate 2.6s linear infinite;
  filter: drop-shadow(0 0 10px rgba(165,134,103,0.20));
}

.pp-preloader-v3__logo-wrap {
position: relative;
  width: 132px;
  height: 132px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pp-preloader-v3__logo {
width: 132px;
  max-width: 132px;
  height: auto;
  display: block;
  object-fit: contain;
  opacity: 0;
  transform: scale(0.88);
  animation:
    ppPreloaderV3LogoIn 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.18s forwards,
    ppPreloaderV3LogoFloat 2.7s ease-in-out 1.1s infinite;
}

@keyframes ppPreloaderV3Appear {
from{
    opacity: 0;
    transform: scale(0.94);
  }
  to{
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes ppPreloaderV3ArcRotate {
from{
    transform: rotate(16deg);
  }
  to{
    transform: rotate(376deg);
  }
}

@keyframes ppPreloaderV3LogoIn {
from{
    opacity: 0;
    transform: scale(0.88);
  }
  to{
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes ppPreloaderV3LogoFloat {
0%,100%{
    transform: translateY(0);
  }
  50%{
    transform: translateY(-2px);
  }
}

body.pp-preloader-active {
overflow: hidden;
}

@media (max-width: 767px) {
  .pp-preloader-v3__orbital {
width: 180px;
    height: 180px;
  }

  .pp-preloader-v3__ring--outer,
  .pp-preloader-v3__arc {
width: 180px;
    height: 180px;
  }

  .pp-preloader-v3__ring--inner {
width: 150px;
    height: 150px;
  }

  .pp-preloader-v3__logo-wrap {
width: 104px;
    height: 104px;
  }

  .pp-preloader-v3__logo {
width: 104px;
    max-width: 104px;
  }
}

/* ======================================== PRELOADER EXIT / PAGE REVEAL ======================================== */

body.pp-preloader-active {
overflow: hidden;
}

body.pp-preloader-active #wrapper {
opacity: 0;
  pointer-events: none;
}

#wrapper {
opacity: 1;
  transition:
    opacity 0.95s cubic-bezier(0.22, 1, 0.36, 1),
    transform 1.15s cubic-bezier(0.22, 1, 0.36, 1),
    filter 0.9s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: opacity;
}

body.page-ready #wrapper {
opacity: 1;
  pointer-events: auto;
}

/* o preloader agora sai em 2 fases: 1) centro desaparece 2) painel sobe para fora do ecrã */

.pp-preloader-v3 {
transition:
    transform 1.05s cubic-bezier(0.77, 0, 0.175, 1),
    opacity 0.45s ease,
    visibility 0.45s ease;
  will-change: transform, opacity;
}

.pp-preloader-v3__center {
transition:
    opacity 0.38s ease,
    transform 0.5s cubic-bezier(0.22, 1, 0.36, 1),
    filter 0.38s ease;
  will-change: transform, opacity, filter;
}

.pp-preloader-v3.is-exiting .pp-preloader-v3__center {
opacity: 0;
  transform: translateY(-18px) scale(0.88);
  filter: blur(6px);
}

.pp-preloader-v3.is-exiting .pp-preloader-v3__arc {
animation-duration: 0.9s;
  opacity: 0.72;
}

.pp-preloader-v3.is-exiting .pp-preloader-v3__ring--outer {
opacity: 0.12;
}

.pp-preloader-v3.is-exiting .pp-preloader-v3__ring--inner {
opacity: 0.18;
}

/* fase 2: o ecrã do preloader sobe todo */

.pp-preloader-v3.is-lifted {
transform: translateY(-100%);
}

.pp-preloader-v3::marker {
content: "";
}

.pp-preloader-v3::after {
box-shadow: inset 0 -40px 80px rgba(0,0,0,0.28);
}

/* ===== CUSTOM NAVBAR ===== */

.navbar {
position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  background: transparent;
  transition:
    transform 0.35s ease,
    opacity 0.35s ease,
    background-color 0.35s ease,
    box-shadow 0.35s ease,
    border-color 0.35s ease;
}

.navbar.nav-hidden {
transform: translateY(-100%);
  opacity: 0;
}

.navbar.nav-visible {
transform: translateY(0);
  opacity: 1;
}

.navbar.nav-scrolled-up {
background: rgba(0, 0, 0, 0.65);
  box-shadow: none;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.navbar.nav-scrolled-up.is-dark {
background: rgba(0, 0, 0, 0.88);
}

.navbar-inner {
background: transparent;
}

.navbar-wrapper {
display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 110px;
  transition: min-height 0.3s ease;
}

.navbar.nav-scrolled-up .navbar-wrapper {
min-height: 88px;
}

.nav-menu-wrapper {
display: flex;
  width: 100%;
}

.nav-menu-flex {
display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  gap: clamp(28px, 3vw, 56px);
  min-width: 0;
}

.div-block-10 {
display: flex;
  align-items: center;
  flex: 0 0 auto;
}

.div-block-11 {
display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(14px, 1.6vw, 28px);
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
}

/* logo mobile antigo */

.navbar-logo {
width: 105px;
  height: auto;
  display: block;
  object-fit: contain;
  transition: width 0.3s ease;
}

.div-block-10 .brand {
display: flex;
  align-items: center;
}

.nav-menu2 {
display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(18px, 2.05vw, 42px);
  margin: 0;
  padding: 0;
  list-style: none;
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
}

.nav-link {
color: #fff;
  text-decoration: none;
  font-family: "Figtree", sans-serif;
  font-size: 17px;
  line-height: 1;
  font-weight: 400;
  transition: opacity 0.25s ease, transform 0.25s ease, color 0.25s ease;
}

.nav-menu2 .nav-link,
.nav-item-mega > .nav-link {
font-size: clamp(14px, 0.88vw, 17px);
  line-height: 1 !important;
  letter-spacing: 0.11em;
  white-space: nowrap;
}

.nav-link:hover {
opacity: 0.7;
  color: #fff;
}

.navbar.nav-scrolled-up .nav-link {
color: #fff !important;
}

.navbar.nav-scrolled-up .nav-link:hover {
color: #fff !important;
  opacity: 0.7;
}

.nav-link.w--current {
position: relative;
}

.nav-link.w--current::after {
content: "";
  position: absolute;
  left: 0;
  bottom: -12px;
  width: 54px;
  height: 2px;
  background: #fff;
}

/* underline preto na navbar branca */

.navbar.nav-scrolled-up .nav-link.w--current::after {
background: #fff !important;
}

.div-block-10 .brand.w--current::after {
display: none !important;
  content: none !important;
}

/* mobile menu */

/* burger preto na navbar branca */

@media (max-width: 991px) {
  .navbar-inner {
display: none;
  }
}

/* ========================= PP MEGA MENU ========================= */

.pp-nav-hover-zone {
position: relative;
  z-index: 20;
}

/* lista da navbar acima do mega menu */

.nav-menu2 {
display: flex;
  align-items: center;
}

.nav-menu2 > li {
display: flex;
  align-items: center;
}

.nav-menu2 > li.nav-item-plain > .nav-link {
transform: translateY(-4px);
}

.nav-menu2 > li,
.nav-item-mega {
position: relative;
}

.nav-item-mega > .nav-link {
display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 0 !important;
  height: auto !important;
  padding: 0 0 6px 0 !important;
  position: relative;
  z-index: 31;
  line-height: 1 !important;
}

.nav-item-mega > .nav-link::before,
.nav-item-mega > .nav-link::after {
pointer-events: none;
}

.nav-item-mega > .nav-link.is-click-only {
opacity: 1;
  cursor: pointer;
}

.nav-item-mega > .nav-link.is-click-only::after {
width: 100%;
  opacity: 1;
}

.nav-item-mega::after {
content: "";
  position: absolute;
  left: -12px;
  right: -12px;
  top: 100%;
  height: 16px;
  z-index: 29;
}

.pp-mega-menu {
position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  z-index: 25;
  opacity: 0;
  visibility: hidden;
  transform: translateY(14px);
  transition:
    opacity 0.28s ease,
    transform 0.32s ease,
    visibility 0.28s ease;
  pointer-events: none;
}

.pp-mega-menu.is-active {
opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

.pp-mega-menu__inner {
background: rgba(10, 10, 10, 0.60);
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 22px;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.18);
  padding: 40px 48px;
}

.pp-mega-menu__grid {
display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 48px;
  align-items: start;
}

.pp-mega-menu__intro {
max-width: 420px;
  display: flex;
  flex-direction: column;
}

.pp-mega-menu__preview {
margin: 24px 0 22px;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.10);
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.pp-mega-menu__preview-media {
position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.03);
}

.pp-mega-menu__preview-image {
width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.55s ease, opacity 0.28s ease;
}

.pp-mega-menu__preview-caption {
display: block;
  padding: 14px 16px;
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.64);
}

.pp-mega-menu__preview:hover .pp-mega-menu__preview-image {
transform: scale(1.04);
}

.pp-mega-menu__title,
.pp-mega-menu__description,
.pp-mega-menu__preview {
transition: opacity 0.22s ease, transform 0.22s ease;
}

.pp-mega-menu__title.is-changing,
.pp-mega-menu__description.is-changing,
.pp-mega-menu__preview.is-changing {
opacity: 0.55;
  transform: translateY(4px);
}

.pp-mega-menu__list a {
position: relative;
}

.pp-mega-menu__list a.is-preview-active {
opacity: 1;
  transform: translateX(10px);
}

.pp-mega-menu__list a.is-preview-active::before {
content: "";
  position: absolute;
  left: -18px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.9);
  transform: translateY(-50%);
}

@media (max-width: 1199px) {
  .pp-mega-menu__grid {
grid-template-columns: 1fr;
    gap: 28px;
  }

  .pp-mega-menu__intro {
max-width: 100%;
  }

  .pp-mega-menu__preview-media {
aspect-ratio: 16 / 8;
  }
}

.pp-mega-menu__title {
color: #fff;
  font-size: 34px;
  line-height: 1.05;
  margin: 0 0 16px;
}

.pp-mega-menu__description {
color: rgba(255, 255, 255, 0.72);
  font-size: 16px;
  line-height: 1.55;
  margin: 0 0 20px;
}

.pp-mega-menu__link {
color: #fff;
  text-decoration: none;
  font-size: 14px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.pp-mega-menu__link::after {
content: "→";
  transition: transform 0.25s ease;
}

.pp-mega-menu__link:hover::after {
transform: translateX(4px);
}

.pp-mega-menu__list {
list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 14px;
}

.pp-mega-menu__list li {
opacity: 0;
  transform: translateY(12px);
  transition:
    opacity 0.35s ease,
    transform 0.35s ease;
}

.pp-mega-menu.is-active .pp-mega-menu__list li {
opacity: 1;
  transform: translateY(0);
}

.pp-mega-menu.is-active .pp-mega-menu__list li:nth-child(1) {
transition-delay: 0.04s;
}

.pp-mega-menu.is-active .pp-mega-menu__list li:nth-child(2) {
transition-delay: 0.08s;
}

.pp-mega-menu.is-active .pp-mega-menu__list li:nth-child(3) {
transition-delay: 0.12s;
}

.pp-mega-menu.is-active .pp-mega-menu__list li:nth-child(4) {
transition-delay: 0.16s;
}

.pp-mega-menu.is-active .pp-mega-menu__list li:nth-child(5) {
transition-delay: 0.20s;
}

.pp-mega-menu.is-active .pp-mega-menu__list li:nth-child(6) {
transition-delay: 0.24s;
}

.pp-mega-menu__list a {
color: #fff;
  text-decoration: none;
  font-size: 18px;
  line-height: 1.35;
  opacity: 0.88;
  transition:
    opacity 0.25s ease,
    transform 0.25s ease;
  display: inline-block;
}

.pp-mega-menu__list a:hover {
opacity: 1;
  transform: translateX(6px);
}

.pp-mega-menu-mask {
position: fixed;
  inset: 0;
  z-index: 15;
  background: rgba(0, 0, 0, 0.08);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.28s ease, visibility 0.28s ease;
  pointer-events: none;
}

.pp-mega-menu-mask.is-active {
opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.nav-item-mega > .nav-link.is-active {
opacity: 1;
}

@media (max-width: 1180px) {
  .pp-mega-menu,
  .pp-mega-menu-mask {
display: none !important;
  }
}

/* ========================= MEGA MENU - VARIANTE CLARA GLASS (NAVBAR SCROLLED UP) ========================= */

.navbar.nav-scrolled-up .pp-mega-menu__inner {
background: rgba(8, 8, 8, 0.88);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 22px;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.34);
  padding: 40px 48px;
}

.navbar.nav-scrolled-up .pp-mega-menu__title {
color: #fff;
}

.navbar.nav-scrolled-up .pp-mega-menu__description {
color: rgba(255, 255, 255, 0.72);
}

.navbar.nav-scrolled-up .pp-mega-menu__link {
color: #fff;
}

.navbar.nav-scrolled-up .pp-mega-menu__list a {
color: #fff;
  opacity: 0.88;
}

.navbar.nav-scrolled-up .pp-mega-menu__list a:hover {
color: #fff;
  opacity: 1;
}

.div-block-11 {
display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(14px, 1.6vw, 28px);
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
}

.div-block-10 .brand {
position: relative;
  display: inline-block;
}

.navbar-logo--default,
.navbar-logo--dropdown {
height: auto;
  object-fit: contain;
  transition: opacity 0.22s ease, visibility 0.22s ease;
}

.navbar-logo--default {
display: block;
  width: 60px;
  opacity: 1;
  visibility: visible;
}

.navbar-logo--dropdown {
display: block;
  width: 60px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

/* ESTADO NORMAL DA NAVBAR */

.navbar:not(.nav-scrolled-up) .navbar-logo--default {
opacity: 1 !important;
  visibility: visible !important;
}

.navbar:not(.nav-scrolled-up) .navbar-logo--dropdown {
opacity: 0 !important;
  visibility: hidden !important;
}

.navbar.nav-scrolled-up .navbar-logo--default {
opacity: 0 !important;
  visibility: hidden !important;
}

.navbar.nav-scrolled-up .navbar-logo--dropdown {
opacity: 1 !important;
  visibility: visible !important;
}

.pp-mega-menu.pp-mega-menu--no-preview .pp-mega-menu__preview {
display:none !important;
}

.pp-mega-menu.pp-mega-menu--no-preview .pp-mega-menu__intro {
max-width:560px;
}

.pp-mega-menu.pp-mega-menu--no-preview .pp-mega-menu__description {
margin-bottom:28px;
}

.pp-mega-menu.pp-mega-menu--no-preview .pp-mega-menu__grid {
grid-template-columns:0.9fr 1.1fr;
  gap:64px;
}

/* ========================================================= NAV CURRENT / HOVER — UNDERLINE NORMALIZADO ========================================================= */

.nav-menu2 {
display: flex;
  align-items: center;
}

.nav-menu2 > li {
display: flex;
  align-items: center;
  position: relative;
}

.nav-menu2 .nav-link {
position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;

  height: auto !important;
  min-height: 20px;
  padding: 0 0 8px 0 !important;

  line-height: 1 !important;
  transform: none !important;
  cursor: pointer;
}

.nav-menu2 .nav-link::after {
content: "";
  position: absolute;
  left: 0;
  bottom: 0;

  width: 0;
  height: 2px;

  background: #fff;
  opacity: 0;

  transition:
    width 0.32s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.22s ease;
}

.nav-menu2 .nav-link:hover::after,
.nav-menu2 .nav-link.w--current::after,
.nav-menu2 .nav-link[aria-current="page"]::after {
width: 100%;
  opacity: 1;
}

.nav-menu2 .nav-link::before {
display: none !important;
}

/* ========================= PP LANGUAGE TOGGLE ========================= */

.pp-lang-toggle {
--pp-lang-pad: 4px;
  position: relative;
  display: inline-grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  width: clamp(84px, 5vw, 96px);
  height: 40px;
  padding: var(--pp-lang-pad);
  margin-left: clamp(12px, 1.4vw, 26px);
  margin-right: 0 !important;
  flex: 0 0 auto;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 0;
  border-width: 1px;
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  overflow: hidden;
  transform: none !important;
  box-sizing: border-box;
}

.pp-lang-toggle__thumb {
position: absolute;
  display: block;
  top: 4px;
  left: 4px;
  width: calc(50% - 6px);
  height: calc(100% - 8px);
  background: #ffffff;
  border-radius: 0;
  box-shadow: 0 4px 14px rgba(255, 255, 255, 0.18);
  transition: transform 0.34s cubic-bezier(0.22, 1, 0.36, 1);
  z-index: 1;
  pointer-events: none;
}

.pp-lang-toggle--pt .pp-lang-toggle__thumb {
transform: translateX(calc(100% + 4px));
}

.pp-lang-toggle--en .pp-lang-toggle__thumb {
transform: translateX(0);
}

.pp-lang-toggle--pt.is-hover-en .pp-lang-toggle__thumb {
transform: translateX(0);
}

.pp-lang-toggle--en.is-hover-pt .pp-lang-toggle__thumb {
transform: translateX(calc(100% + 4px));
}

.pp-lang-toggle__option {
position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-family: "Figtree", sans-serif;
  font-size: 14px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  transition: color 0.28s ease, opacity 0.28s ease;
  border-radius: 0;
  box-sizing: border-box;
}

.pp-lang-toggle__option span {
position: relative;
  z-index: 2;
}

.pp-lang-toggle--pt .pp-lang-toggle__option--en,
.pp-lang-toggle--en .pp-lang-toggle__option--pt {
color: rgba(255, 255, 255, 0.88);
}

.pp-lang-toggle--pt .pp-lang-toggle__option--pt,
.pp-lang-toggle--en .pp-lang-toggle__option--en {
color: #111111;
}

.pp-lang-toggle--pt.is-hover-en .pp-lang-toggle__option--en {
color: #111111;
}

.pp-lang-toggle--pt.is-hover-en .pp-lang-toggle__option--pt {
color: rgba(255, 255, 255, 0.88);
}

.pp-lang-toggle--en.is-hover-pt .pp-lang-toggle__option--pt {
color: #111111;
}

.pp-lang-toggle--en.is-hover-pt .pp-lang-toggle__option--en {
color: rgba(255, 255, 255, 0.88);
}

.pp-lang-toggle__option:hover {
opacity: 1;
}

/* navbar branca / scrolled up */

.navbar.nav-scrolled-up .pp-lang-toggle {
border-color: rgba(255, 255, 255, 0.38);
  background: rgba(255, 255, 255, 0.10);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.navbar.nav-scrolled-up .pp-lang-toggle__thumb {
background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 4px 14px rgba(255, 255, 255, 0.16);
}

.navbar.nav-scrolled-up .pp-lang-toggle--pt .pp-lang-toggle__option--en,
.navbar.nav-scrolled-up .pp-lang-toggle--en .pp-lang-toggle__option--pt {
color: rgba(255, 255, 255, 0.88);
}

.navbar.nav-scrolled-up .pp-lang-toggle--pt .pp-lang-toggle__option--pt,
.navbar.nav-scrolled-up .pp-lang-toggle--en .pp-lang-toggle__option--en {
color: #111111;
}

.navbar.nav-scrolled-up .pp-lang-toggle--pt.is-hover-en .pp-lang-toggle__option--en,
.navbar.nav-scrolled-up .pp-lang-toggle--en.is-hover-pt .pp-lang-toggle__option--pt {
color: #111111;
}

.navbar.nav-scrolled-up .pp-lang-toggle--pt.is-hover-en .pp-lang-toggle__option--pt,
.navbar.nav-scrolled-up .pp-lang-toggle--en.is-hover-pt .pp-lang-toggle__option--en {
color: rgba(255, 255, 255, 0.88);
}

/* mobile */

@media (max-width: 991px) {
  .pp-lang-toggle {
display: none;
  }

  .pp-lang-toggle {
position: relative;
    flex: 0 0 auto;
    flex-shrink: 0;
    margin-left: auto;
    width: 92px;
    height: 40px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    border: 1px solid rgba(255,255,255,.42);
    background: rgba(0,0,0,.18);
    overflow: hidden;
  }
}

/* ========================================================= PP TÊXTEIS — MOBILE MENU PREMIUM ========================================================= */

.pp-mobile-nav {
display:none;
}

@media (max-width:1180px) {
  .navbar {
display:none !important;
  }

  .pp-mobile-nav {
display:block;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:5000;
    padding:10px;
    pointer-events:none;
    transform:none;
    opacity:1;
    visibility:visible;
    transition:
      transform .42s cubic-bezier(.22,1,.36,1),
      opacity .32s ease,
      visibility .32s ease;
  }

  .pp-mobile-nav.is-hidden {
transform:translateY(-120%) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }

  .pp-mobile-nav.is-open,
  .pp-mobile-nav.is-open.is-hidden {
transform:none !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  .pp-mobile-nav__bar,
  .pp-mobile-nav__panel-bar {
height:72px;
    border-radius:0;
    background:#030303;
    border:1px solid rgba(255,255,255,.22);
    backdrop-filter:blur(18px);
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 22px;
    pointer-events:auto;
    box-shadow:none;
  }

  .pp-mobile-nav__brand {
display:flex;
    align-items:center;
  }

  .pp-mobile-nav__brand img {
height:40px;
    width:auto;
    display:block;
  }

  .pp-mobile-nav__toggle,
  .pp-mobile-nav__close {
width:46px;
    height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    border:0;
    background:transparent;
    cursor:pointer;
  }

  .pp-mobile-nav__toggle span,
  .pp-mobile-nav__close span {
position:absolute;
    width:34px;
    height:2px;
    background:#f4eee8;
    border-radius:0;
  }

  .pp-mobile-nav__toggle span:first-child {
transform:translateY(-7px);
  }

  .pp-mobile-nav__toggle span:last-child {
transform:translateY(7px);
  }

  .pp-mobile-nav__close span:first-child {
transform:rotate(45deg);
  }

  .pp-mobile-nav__close span:last-child {
transform:rotate(-45deg);
  }

  .pp-mobile-nav__panel {
position:fixed;
    inset:0;
    padding:10px;
    background:
      linear-gradient(180deg, rgba(0,0,0,.82), rgba(0,0,0,.96)),
      rgba(0,0,0,.94);
    backdrop-filter:blur(18px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(28px);
    transition:
      opacity .45s ease,
      visibility .45s ease,
      transform .45s cubic-bezier(.22,1,.36,1);
    overflow-y:hidden;
    overscroll-behavior:contain;
  }

  .pp-mobile-nav.is-open .pp-mobile-nav__panel {
opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
  }

  .pp-mobile-nav.is-departments-open .pp-mobile-nav__panel {
overflow-y:auto;
  }

  .pp-mobile-nav__menu {
margin-top:10px;
    border-radius:0;
    background:#030303;
    border:1px solid rgba(255,255,255,.22);
    padding:34px 28px 26px;
    max-height:none;
    overflow:visible;
    box-shadow:none;
  }

  .pp-mobile-nav.is-departments-open .pp-mobile-nav__menu {
margin-bottom:20px;
  }

  .pp-mobile-nav__link,
  .pp-mobile-nav__dropdown-btn {
width:100%;
    min-height:64px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
    border-bottom:1px solid rgba(255,255,255,.20);
    color:#f7f1ea !important;
    font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
    font-size:clamp(31px, 7.8vw, 47px);
    line-height:.92;
    letter-spacing:-.058em;
    text-transform:none;
    background:transparent;
    padding:0;
    text-align:left;
  }

  .pp-mobile-nav__dropdown-btn span {
flex:0 0 auto;
    margin-left:0;
    font-size:32px;
    line-height:1;
    color:#A58667;
    transition:transform .35s ease;
  }

  .pp-mobile-nav__dropdown-btn.is-active span {
transform:rotate(45deg);
  }

  .pp-mobile-nav__submenu {
max-height:0;
    overflow:hidden;
    opacity:0;
    transform:translateY(-10px);
    pointer-events:none;
    transition:
      max-height .45s cubic-bezier(.22,1,.36,1),
      opacity .28s ease,
      transform .45s cubic-bezier(.22,1,.36,1);
  }

  .pp-mobile-nav__submenu.is-open {
max-height:300px;
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
  }

  .pp-mobile-nav__submenu a {
display:flex;
    align-items:center;
    min-height:50px;
    padding-left:34px;
    border-bottom:1px solid rgba(255,255,255,.12);
    color:rgba(247,241,234,.74) !important;
    font-family:"URWGeometricMedium", "Figtree", sans-serif;
    font-size:20px;
    letter-spacing:-.025em;
    position:relative;
  }

  .pp-mobile-nav__submenu a::before {
content:"↳";
    position:absolute;
    left:0;
    color:rgba(165,134,103,.9);
  }

  .pp-mobile-nav__footer {
position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    margin-top:18px;
    padding:0;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:0;
    pointer-events:auto;
  }

  .pp-mobile-nav__footer a,
  .pp-mobile-nav__footer span {
width:66px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(255,255,255,.62);
    color:#fff !important;
    font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
    font-size:17px;
    line-height:1;
    letter-spacing:.08em;
    text-transform:uppercase;
    transition:
      background .32s ease,
      color .32s ease,
      border-color .32s ease;
  }

  .pp-mobile-nav__footer a {
border-right:0;
    background:transparent;
  }

  .pp-mobile-nav__footer span {
background:#fff;
    color:#050505 !important;
  }

  .pp-mobile-nav__footer.is-switching-pt a {
background:#fff;
    color:#050505 !important;
  }

  .pp-mobile-nav__footer.is-switching-pt span {
background:transparent;
    color:#fff !important;
  }

  body.pp-mobile-menu-open {
overflow:hidden;
  }

  body.pp-mobile-menu-open .pp-mobile-nav__panel {
opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }
}

/* ======================================== HERO BANNER - PP SYMBOL CENTERED ======================================== */

/* estrutura base da hero */

/* garante que a zona de conteúdo ocupa a hero toda */

/* neutraliza a antiga estrutura col-left desta hero */

/* subtítulo apenas desta hero */

/* animação apenas para o subtítulo desta hero */

/* mobile */

/* ========================================================= HERO VIDEO SECTION - NOVO ESTILO COM FADE PARA A SECÇÃO SEGUINTE ========================================================= */

/* vídeo ocupa a hero toda */

/* ========================================================= HOME V2 — INDEX.HTML ========================================================= */

/* ========================================================= HOME — INTRO PREMIUM V3 ========================================================= */

.pp-home-intro-flow--v3 .reveal-up {
opacity:0;
  transform:translateY(42px);
  transition:
    opacity .9s ease,
    transform .9s cubic-bezier(.22,1,.36,1);
}

.pp-home-intro-flow--v3 .reveal-up.is-visible,
.pp-home-intro-flow--v3.is-visible .reveal-up {
opacity:1;
  transform:translateY(0);
}

@media (max-width:767px) {
  .pp-home-intro-flow--v3 .container {
padding-left:18px;
    padding-right:18px;
  }
}

/* ========================================================= HOME — VALUES CINEMATIC — PERFORMANCE REFINED ========================================================= */

/* Tablet/mobile: sem animação de flex, mais leve */

/* ========================================================= HOME INTRO PREMIUM V3 / PORTUGAL FLAG METRIC ========================================================= */

/* tablet/mobile */

/* ========================================================= HOME — SERVICES HORIZONTAL SHOWCASE / FIT + FLUID Substitui TODO o bloco antigo .pp-home-axtira-scroll Sem overrides, sem !important ========================================================= */

.pp-home-axtira-scroll .container {
width:100%;
  max-width:100%;
  height:100%;
  padding-left:0;
  padding-right:0;
}

.pp-home-axtira-scroll .reveal-up {
opacity:0;
  transform:translateY(28px);
  transition:opacity .7s ease, transform .7s cubic-bezier(.22,1,.36,1);
}

.pp-home-axtira-scroll .reveal-up.is-visible {
opacity:1;
  transform:translateY(0);
}

/* MOBILE */

@media (prefers-reduced-motion:reduce) {
  .pp-home-axtira-scroll .reveal-up {
transform:none;
  }

  .pp-home-axtira-scroll .reveal-up {
opacity:1;
  }
}

/* ========================================================= HOME — INNOVATION LAB ========================================================= */

/* ========================================================= HOME — SUSTAINABILITY ORBIT ========================================================= */

.pp-home-sustainability-orbit .container {
position:relative;
  z-index:2;
}

@media (max-width:767px) {
  .pp-home-sustainability-orbit .container {
padding-left:18px;
    padding-right:18px;
  }
}

/* ========================================================= HOME — MARQUEE BRANDS / PARTNERS — NO HOVER PAUSE ========================================================= */

/* ========================================================= HOME V2 — PERFORMANCE PATCH ========================================================= */

.bu-page {
background: #000;
  color: #fff;
}

.bu-page a {
text-decoration: none;
}

/* Hero */

/* ========================= PROCESS SECTION - WHITE CARDS / BLACK TEXT ========================= */

/* Detalhe decorativo inspirado no logótipo PP Têxteis */

.text-color-change .word-wrapper {
position: relative;
  display: inline-block;
  margin-right: 0.28em;
}

.text-color-change .char-wrapper {
position: relative;
  display: inline-block;
  color: rgba(255, 255, 255, 0.32);
  transition: color 0.18s linear;
}

.text-color-change .word-wrapper {
position: relative;
  display: inline-block;
  margin-right: 0.22em;
  vertical-align: top;
}

/* ======================================== PP TÊXTEIS - PROCESS SECTION / ALTERNATING IMAGE + TEXT ======================================== */

/* mobile */

/* ======================================== PP TÊXTEIS - ABOUT US - PROCESS SECTION / ALTERNATING IMAGE + TEXT ======================================== */

/* mobile */

/* Contact */

/* Contact Us Map */

/* ========================================================= PP CAMPUS EXPLORER ========================================================= */

/* ======================================== FIX — CAMPUS HEADER TEXT UNDER TITLE ======================================== */

/* ========================================================= CAMPUS OVERVIEW — MOCKUP FIEL AO SVG ORIGINAL Mantém a geometria do SVG e recupera cor/linhas 3D ========================================================= */

/* ========================================================= TEAM — COVER HERO / SERVICES STYLE Posição controlada por bottom, sem colisão com padding/media queries ========================================================= */

/* Mobile */

/* Mobile pequeno */

/* ========================================================= CAMPUS OVERVIEW — COLOR MATCH COM FLOOR 0 / FLOOR 1 / WAREHOUSE Aplica cor ao SVG novo da Vista Geral ========================================================= */

/* IMPORTANTÍSSIMO: O SVG tem polygons com duas classes: .pp-campus-overview__top + .pp-campus-overview__line Por isso temos de forçar o fill aqui. */

/* Mobile/tablet — mantém legível */

/* ========================================================= TEAM DIRECTORY ========================================================= */

/* ================================================================================================================== ABOUT.HTML — NOVAS SECÇÕES ===================================================================================================================== */

/* ========================================================= ABOUT — HERO ========================================================= */

.pp-about-hero-op1 .container {
position:relative;
  z-index:3;
  width:1326px;
  max-width:100%;
}

/* ========================================================= TRANSFERS PAGE ========================================================= */

/* ========================================================= TRANSFERS — HERO LIKE ABOUT US ========================================================= */

/* MOBILE */

/* ---------------------------------------- PROCESS ---------------------------------------- */

/* ---------------------------------------- WHY TRANSFERS ---------------------------------------- */

.reveal-up {
opacity: 0;
  transition: opacity 0.8s ease, transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.reveal-up {
transform: translateY(40px);
}

.reveal-up.is-visible {
opacity: 1;
  transform: translate(0, 0);
}

/* ========================================================= PP INNOVATION LAB / VALUE CARDS ========================================================= */

/* ========================================================= INNOVATION LAB HERO — TECH INDUSTRIAL STYLE 02 ========================================================= */

/* ========================================================= PP INNOVATION LAB / ABOUT — TECH INDUSTRIAL STYLE 02 ========================================================= */

/* ========================================================= INNOVATION LAB — CAPABILITIES MATRIX ========================================================= */

/* ========================================================= INNOVATION LAB — IMAGE GALLERY ========================================================= */

/* ========================================================= INNOVATION LAB — ISOLATED FINAL CTA ========================================================= */

/* ========================================================= INNOVATION LAB — HERO TITLE MATCH ABOUT US ========================================================= */

/* para o bloco do hero ficar mais parecido com o About */

/* MOBILE / TABLET */

/* ========================================================= CONTACT PAGE — PP TÊXTEIS CLEAN Hero + Form + Direct Contacts + Visit ========================================================= */

.pp-contact-template-hero,
.pp-contact-template-hero *,
.pp-contact-template-direct,
.pp-contact-template-direct *,
.pp-contact-template-visit,
.pp-contact-template-visit * {
box-sizing:border-box;
}

.pp-contact-template-hero {
position:relative;
  min-height:100svh;
  padding:clamp(160px, 13vw, 210px) 0 clamp(78px, 7vw, 118px);
  overflow:hidden;
  isolation:isolate;
  background:#050505;
  color:#ffffff;
  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
}

.pp-contact-template-hero__bg {
position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  background:#050505;
}

.pp-contact-template-hero__bg img {
width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  filter:saturate(.85) contrast(1.08) brightness(.58);
}

.pp-contact-template-hero__overlay {
position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg, rgba(0,0,0,.90) 0%, rgba(0,0,0,.66) 43%, rgba(0,0,0,.40) 100%),
    linear-gradient(180deg, rgba(0,0,0,.62) 0%, rgba(0,0,0,.12) 50%, rgba(0,0,0,.82) 100%);
  pointer-events:none;
}

.pp-contact-template-hero .container {
position:relative;
  z-index:2;
}

.pp-contact-template-hero__grid {
display:grid;
  grid-template-columns:minmax(0, 1.02fr) minmax(460px, .98fr);
  gap:clamp(52px, 6vw, 88px);
  align-items:stretch;
}

.pp-contact-template-hero__left {
display:flex;
  flex-direction:column;
  justify-content:flex-start;
  padding-top:6px;
}

.pp-contact-template-hero__title {
margin:0;
  max-width:9.8ch;
  color:#f5f1ec;
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(70px, 7vw, 112px);
  line-height:.90;
  letter-spacing:-.075em;
  font-weight:500;
}

.pp-contact-template-hero__intro {
max-width:760px;
  margin:clamp(26px, 2.4vw, 34px) 0 0;
  color:rgba(245,241,236,.82);
  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(18px, 1.16vw, 22px);
  line-height:1.62;
  letter-spacing:-.02em;
}

.pp-contact-template-hero__person-card {
width:100%;
  max-width:486px;
  min-height:182px;
  margin-top:clamp(34px, 3vw, 48px);
  padding:24px;
  display:grid;
  grid-template-columns:174px 1fr;
  gap:24px;
  align-items:center;
  border-radius:12px;
  background:rgba(110,92,82,.52);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.pp-contact-template-hero__person-media {
display:flex;
  align-items:center;
  justify-content:center;
}

.pp-contact-template-hero__person-media-inner {
width:174px;
  height:174px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:10px;
  background:rgba(255,255,255,.08);
}

.pp-contact-template-hero__person-media-inner img {
width:86px;
  height:auto;
  display:block;
  object-fit:contain;
  filter:brightness(1.08);
}

.pp-contact-template-hero__person-role {
display:block;
  margin-bottom:10px;
  color:rgba(245,241,236,.68);
  font-size:13px;
  line-height:1.25;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.pp-contact-template-hero__person-name {
margin:0 0 10px;
  color:#ffffff;
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(28px, 2vw, 36px);
  line-height:1;
  letter-spacing:-.045em;
}

.pp-contact-template-hero__person-content a {
display:block;
  width:max-content;
  max-width:100%;
  color:rgba(255,255,255,.92);
  text-decoration:none;
  font-size:17px;
  line-height:1.65;
  letter-spacing:-.015em;
}

.pp-contact-template-hero__person-content a:hover {
color:#ffffff;
}

.pp-contact-template-hero__right {
display:flex;
  align-items:stretch;
}

.pp-contact-template-hero__form-card {
width:100%;
  min-height:650px;
  padding:clamp(26px, 2.5vw, 38px);
  border-radius:14px;
  border:1px solid rgba(255,255,255,.26);
  background:rgba(18,18,18,.34);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  box-shadow:0 24px 80px rgba(0,0,0,.28);
}

.pp-contact-template-hero__form-title {
margin:0 0 24px;
  color:#f5f1ec;
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(34px, 3vw, 54px);
  line-height:.98;
  letter-spacing:-.055em;
}

.pp-contact-template-hero__form {
display:flex;
  flex-direction:column;
  gap:13px;
}

.pp-contact-template-hero__form input,
.pp-contact-template-hero__form textarea {
width:100%;
  appearance:none;
  -webkit-appearance:none;
  border:1px solid rgba(255,255,255,.18);
  outline:none;
  box-shadow:none;
  background:#f1eee9;
  color:#111111;
  caret-color:#111111;
  border-radius:9px;
  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:18px;
  line-height:1.35;
  letter-spacing:-.018em;
  transition:
    border-color .28s ease,
    background-color .28s ease,
    box-shadow .28s ease,
    transform .28s ease;
}

.pp-contact-template-hero__form input {
min-height:68px;
  padding:0 24px;
}

.pp-contact-template-hero__form textarea {
min-height:220px;
  resize:none;
  padding:22px 24px;
}

.pp-contact-template-hero__form input::placeholder,
.pp-contact-template-hero__form textarea::placeholder {
color:rgba(17,17,17,.48);
  opacity:1;
}

.pp-contact-template-hero__form input:focus,
.pp-contact-template-hero__form textarea:focus {
background:#ffffff;
  color:#111111;
  border-color:rgba(165,134,103,.78);
  box-shadow:
    0 0 0 3px rgba(165,134,103,.18),
    0 18px 44px rgba(0,0,0,.16);
}

.pp-contact-template-hero__form input:focus::placeholder,
.pp-contact-template-hero__form textarea:focus::placeholder {
color:rgba(17,17,17,.36);
}

.pp-contact-template-hero__form input:-webkit-autofill,
.pp-contact-template-hero__form input:-webkit-autofill:hover,
.pp-contact-template-hero__form input:-webkit-autofill:focus,
.pp-contact-template-hero__form textarea:-webkit-autofill,
.pp-contact-template-hero__form textarea:-webkit-autofill:hover,
.pp-contact-template-hero__form textarea:-webkit-autofill:focus {
-webkit-text-fill-color:#111111;
  caret-color:#111111;
  box-shadow:0 0 0 1000px #ffffff inset;
  border-color:rgba(165,134,103,.78);
}

.pp-contact-template-hero__form-actions {
margin-top:10px;
  display:flex;
  justify-content:flex-start;
}

/* ========================================================= CONTACT — BOTÃO FINAL ISOLADO DE TODO O CSS DO TEMPLATE ========================================================= */

form.pp-contact-template-hero__form button.pp-contact-form-cta {
all:unset;

  box-sizing:border-box !important;

  position:relative !important;
  isolation:isolate !important;

  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;

  gap:22px !important;

  width:fit-content !important;
  max-width:100% !important;

  min-width:0 !important;
  min-height:62px !important;

  padding:0 18px 0 30px !important;
  margin:32px 0 0 0 !important;

  overflow:hidden !important;

  border:1px solid rgba(255,255,255,.32) !important;
  border-radius:999px !important;

  background:rgba(255,255,255,.055) !important;
  color:#ffffff !important;

  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 16px 46px rgba(0,0,0,.24) !important;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    ) !important;

  font-size:12px !important;
  line-height:1 !important;
  font-weight:500 !important;

  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  text-align:center !important;

  white-space:nowrap !important;

  cursor:pointer !important;

  transition:
    color .38s cubic-bezier(.22,1,.36,1),
    border-color .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1),
    box-shadow .38s cubic-bezier(.22,1,.36,1) !important;
}

form.pp-contact-template-hero__form button.pp-contact-form-cta::before {
content:"" !important;

  position:absolute !important;

  inset:0 !important;

  z-index:-1 !important;

  display:block !important;

  width:100% !important;
  height:100% !important;

  border-radius:inherit !important;

  background:#ffffff !important;

  transform:translateY(105%) !important;

  transition:
    transform .46s cubic-bezier(.22,1,.36,1) !important;
}

form.pp-contact-template-hero__form button.pp-contact-form-cta::after {
content:none !important;
  display:none !important;
}

form.pp-contact-template-hero__form button.pp-contact-form-cta > i {
all:unset;

  box-sizing:border-box !important;

  position:relative !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  flex:0 0 42px !important;

  width:42px !important;
  height:42px !important;

  border-radius:50% !important;

  background:#A58667 !important;
  color:#ffffff !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 10px 26px rgba(165,134,103,.24) !important;

  transition:
    background-color .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1),
    color .38s cubic-bezier(.22,1,.36,1) !important;
}

form.pp-contact-template-hero__form button.pp-contact-form-cta > i::before {
content:"" !important;

  position:absolute !important;

  left:50% !important;
  top:50% !important;

  display:block !important;

  width:15px !important;
  height:1px !important;

  background:#ffffff !important;

  transform:translate(-52%, -50%) !important;
}

form.pp-contact-template-hero__form button.pp-contact-form-cta > i::after {
content:"" !important;

  position:absolute !important;

  left:50% !important;
  top:50% !important;

  display:block !important;

  width:7px !important;
  height:7px !important;

  border:0 !important;
  border-top:1px solid #ffffff !important;
  border-right:1px solid #ffffff !important;

  background:transparent !important;

  transform:
    translate(-6%, -50%)
    rotate(45deg) !important;
}

@media (hover:hover) and (pointer:fine) {
  form.pp-contact-template-hero__form button.pp-contact-form-cta:hover {
color:#050505 !important;

    border-color:#ffffff !important;

    transform:translateY(-2px) !important;

    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.24),
      0 22px 60px rgba(0,0,0,.32) !important;
  }

  form.pp-contact-template-hero__form button.pp-contact-form-cta:hover::before {
transform:translateY(0) !important;
  }

  form.pp-contact-template-hero__form button.pp-contact-form-cta:hover > i {
background:#050505 !important;
    color:#ffffff !important;

    transform:translateX(4px) !important;
  }
}

form.pp-contact-template-hero__form button.pp-contact-form-cta:focus-visible {
outline:2px solid #ffffff !important;
  outline-offset:4px !important;
}

form.pp-contact-template-hero__form button.pp-contact-form-cta:active {
transform:scale(.985) !important;
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-contact-template-hero__form-actions {
margin-top:0 !important;
    justify-content:flex-start !important;
  }

  form.pp-contact-template-hero__form button.pp-contact-form-cta {
min-height:56px !important;

    margin-top:26px !important;

    padding:
      0
      9px
      0
      21px !important;

    gap:16px !important;

    font-size:11px !important;
    letter-spacing:.12em !important;
  }

  form.pp-contact-template-hero__form button.pp-contact-form-cta > i {
flex-basis:40px !important;

    width:40px !important;
    height:40px !important;
  }
}

@media (max-width:575px) {
  form.pp-contact-template-hero__form button.pp-contact-form-cta {
min-height:54px !important;

    padding:
      0
      8px
      0
      19px !important;

    gap:14px !important;

    font-size:10.5px !important;
    letter-spacing:.115em !important;
  }

  form.pp-contact-template-hero__form button.pp-contact-form-cta > i {
flex-basis:38px !important;

    width:38px !important;
    height:38px !important;
  }

  form.pp-contact-template-hero__form button.pp-contact-form-cta > i::before {
width:14px !important;
  }
}

/* DIRECT CONTACTS */

.pp-contact-template-direct {
background:#f3eee8;
  padding:clamp(86px, 8vw, 118px) 0 clamp(88px, 8vw, 120px);
  color:#050505;
  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
}

.pp-contact-template-direct__head {
text-align:center;
  margin-bottom:clamp(42px, 4vw, 58px);
}

.pp-contact-template-direct__title,
.pp-contact-template-visit__title {
margin:0;
  color:#050505;
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(54px, 5vw, 86px);
  line-height:.94;
  letter-spacing:-.065em;
}

.pp-contact-template-direct__grid {
display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
}

.pp-contact-template-direct__card {
min-height:482px;
  padding:26px;
  display:flex;
  flex-direction:column;
  border-radius:14px;
  background:#ede7e1;
  color:#050505;
  text-decoration:none;
  border:1px solid rgba(0,0,0,.04);
  transition:
    transform .35s cubic-bezier(.22,1,.36,1),
    box-shadow .35s cubic-bezier(.22,1,.36,1),
    background .35s cubic-bezier(.22,1,.36,1);
}

.pp-contact-template-direct__card:hover {
transform:translateY(-6px);
  background:#f1ebe5;
  box-shadow:0 24px 60px rgba(0,0,0,.08);
}

.pp-contact-template-direct__icon-box {
width:92px;
  height:92px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:#f8f4ef;
  color:var(--primary, #A58667);
}

.pp-contact-template-direct__icon-box svg {
width:38px;
  height:38px;
  display:block;
}

.pp-contact-template-direct__card-bottom {
margin-top:auto;
}

.pp-contact-template-direct__card h3 {
margin:0 0 14px;
  color:#050505;
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(31px, 2.2vw, 42px);
  line-height:.98;
  letter-spacing:-.055em;
}

.pp-contact-template-direct__card p {
margin:0;
  color:rgba(5,5,5,.64);
  font-size:18px;
  line-height:1.58;
  letter-spacing:-.018em;
}

.pp-contact-template-direct__cta {
margin-top:34px;
  display:flex;
  align-items:center;
  gap:18px;
}

.pp-contact-template-direct__cta span:first-child {
color:#050505;
  font-size:18px;
  line-height:1.25;
  letter-spacing:-.02em;
}

.pp-contact-template-direct__arrow {
width:66px;
  height:66px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  background:#f8f4ef;
  color:#050505;
  font-size:32px;
  line-height:1;
  transition:transform .35s cubic-bezier(.22,1,.36,1);
}

.pp-contact-template-direct__card:hover .pp-contact-template-direct__arrow {
transform:translateX(5px);
}

.pp-contact-template-visit {
background:#f3eee8;
  padding:0 0 clamp(92px, 8vw, 124px);
  color:#050505;
  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
}

.pp-contact-template-visit__head {
text-align:center;
  margin-bottom:clamp(38px, 4vw, 52px);
}

.pp-contact-template-visit__grid {
display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  align-items:stretch;
}

.pp-contact-template-visit__map,
.pp-contact-template-visit__media {
position:relative;
  min-height:590px;
  overflow:hidden;
  border-radius:14px;
  background:#e8e1db;
}

.pp-contact-template-visit__leaflet {
width:100%;
  height:100%;
  min-height:590px;
}

.pp-contact-template-visit__media img,
.pp-contact-template-visit__image {
width:100%;
  height:100%;
  min-height:590px;
  display:block;
  object-fit:cover;
  object-position:center;
  filter:none !important;
  opacity:1;
}

@media (max-width:1199px) {
  .pp-contact-template-hero__grid {
grid-template-columns:1fr;
    gap:48px;
  }

  .pp-contact-template-hero__title {
max-width:100%;
  }

  .pp-contact-template-hero__form-card {
min-height:auto;
  }

  .pp-contact-template-direct__grid,
  .pp-contact-template-visit__grid {
grid-template-columns:1fr;
  }
}

@media (max-width:991px) {
  .pp-contact-template-hero {
min-height:auto;
    padding:132px 0 76px;
  }

  .pp-contact-template-hero__title {
font-size:clamp(54px, 12vw, 86px);
  }

  .pp-contact-template-hero__person-card {
grid-template-columns:120px 1fr;
    max-width:100%;
    min-height:auto;
  }

  .pp-contact-template-hero__person-media-inner {
width:120px;
    height:120px;
  }

  .pp-contact-template-hero__person-media-inner img {
width:58px;
  }

  .pp-contact-template-direct__card {
min-height:360px;
  }

  .pp-contact-template-visit__map,
  .pp-contact-template-visit__media,
  .pp-contact-template-visit__leaflet,
  .pp-contact-template-visit__media img,
  .pp-contact-template-visit__image {
min-height:460px;
  }
}

@media (max-width:767px) {
  .pp-contact-template-hero {
padding:118px 0 64px;
  }

  .pp-contact-template-hero__person-card {
grid-template-columns:1fr;
    gap:18px;
  }

  .pp-contact-template-hero__form-card {
padding:22px;
    border-radius:12px;
  }

  .pp-contact-template-hero__form-title {
font-size:38px;
  }

  .pp-contact-template-hero__form input {
min-height:60px;
    padding:0 18px;
    font-size:17px;
  }

  .pp-contact-template-hero__form textarea {
min-height:190px;
    padding:18px;
    font-size:17px;
  }

  .pp-contact-template-hero__form-actions {
justify-content:stretch;
  }

  .pp-contact-template-direct__card {
min-height:320px;
    padding:22px;
  }

  .pp-contact-template-direct__arrow {
width:58px;
    height:58px;
    font-size:28px;
  }

  .pp-contact-template-visit__map,
  .pp-contact-template-visit__media,
  .pp-contact-template-visit__leaflet,
  .pp-contact-template-visit__media img,
  .pp-contact-template-visit__image {
min-height:390px;
  }
}

@media (max-width:520px) {
  .pp-contact-template-hero__title {
font-size:clamp(46px, 14vw, 68px);
    letter-spacing:-.06em;
  }

  .pp-contact-template-hero__intro {
font-size:17px;
  }

  .pp-contact-template-direct__title,
  .pp-contact-template-visit__title {
font-size:clamp(44px, 12vw, 62px);
  }
}

/* ========================================================= PP SERVICES PAGE — LIGHT PREMIUM REDESIGN ========================================================= */

/* MOBILE */

/* ========================================================= SERVICES — O QUE FAZEMOS ========================================================= */

.pp-services-showcase {
--pp-services-bg:#ffffff;
  --pp-services-black:#050505;
  --pp-services-text:rgba(5,5,5,.64);
  --pp-services-muted:rgba(5,5,5,.48);
  --pp-services-line:rgba(5,5,5,.12);
  --pp-services-accent:#A58667;

  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(96px, 7vw, 132px) 0 clamp(88px, 7vw, 130px);
  background:#ffffff;
  color:var(--pp-services-black);
}

.pp-services-showcase::before,
.pp-services-showcase::after {
content:none;
  display:none;
}

.pp-services-showcase .container {
width:min(1540px, calc(100% - 64px));
  max-width:none;
  padding-left:0;
  padding-right:0;
}

/* ========================================================= HEADER — CLEAN PP / FUNDO BRANCO ========================================================= */

.pp-services-showcase__head {
position:relative;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;

  min-height:auto;
  padding:clamp(70px, 6vw, 110px) 0 clamp(66px, 5.5vw, 96px);
  margin-bottom:clamp(58px, 5vw, 88px);

  background:#ffffff;
  overflow:visible;
  isolation:auto;
}

.pp-services-showcase__head::before,
.pp-services-showcase__head::after {
content:none;
  display:none;
}

.pp-services-showcase__eyebrow {
display:inline-flex;
  align-items:center;
  gap:20px;
  margin:0 0 clamp(30px, 3vw, 48px);

  color:var(--pp-services-accent);
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(12px, .72vw, 14px);
  line-height:1;
  font-weight:500;
  letter-spacing:.32em;
  text-transform:uppercase;
}

.pp-services-showcase__eyebrow::before {
content:"";
  display:block;
  width:64px;
  height:1px;
  background:var(--pp-services-accent);
}

.pp-services-showcase__eyebrow::after {
content:none;
  display:none;
}

.pp-services-showcase__head h2 {
width:100%;
  max-width:1180px;
  margin:0;

  color:var(--pp-services-black);
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(72px, 7.9vw, 142px);
  line-height:.86;
  font-weight:500;
  letter-spacing:-.088em;
  text-transform:uppercase;
}

.pp-services-showcase__head h2 i {
display:none;
}

.pp-services-showcase__head p {
max-width:760px;
  margin:clamp(34px, 3.6vw, 58px) 0 0;

  color:var(--pp-services-text);
  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(21px, 1.45vw, 28px);
  line-height:1.48;
  font-weight:400;
  letter-spacing:-.035em;
}

/* BOTÃO — SERVICES / FALAR COM A EQUIPA */

.pp-services-showcase__link {
position:relative;
  width:max-content;
  max-width:100%;
  margin-top:44px;
  padding:0 0 13px 0;

  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:26px;

  border-bottom:1px solid rgba(165,134,103,.72);

  color:#A58667 !important;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:13px;
  line-height:1;
  letter-spacing:.22em;
  text-transform:uppercase;
  text-decoration:none;

  background:transparent !important;
  border-radius:0 !important;

  transition:
    color .35s cubic-bezier(.22,1,.36,1),
    border-color .35s cubic-bezier(.22,1,.36,1);
}

.pp-services-showcase__link span {
display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#A58667;
  font-size:24px;
  line-height:1;
  transform:translateY(-1px);
  transition:
    transform .35s cubic-bezier(.22,1,.36,1),
    color .35s cubic-bezier(.22,1,.36,1);
}

.pp-services-showcase__link:hover {
color:#101010 !important;
  border-color:#101010;
}

.pp-services-showcase__link:hover span {
color:#101010;
  transform:translate(6px, -1px);
}

/* MOBILE — mantém o botão alinhado e não em largura total */

@media (max-width:767px) {
  .pp-services-showcase__link {
width:max-content !important;
    max-width:100%;
    margin-top:34px;
  }
}

@media (max-width:1399px) {
  .pp-services-showcase__head h2 {
max-width:1040px;
    font-size:clamp(66px, 7.7vw, 124px);
  }

  .pp-services-showcase__head p {
max-width:700px;
    font-size:clamp(20px, 1.55vw, 26px);
  }
}

@media (max-width:1199px) {
  .pp-services-showcase {
padding:clamp(86px, 8vw, 118px) 0 clamp(78px, 7vw, 112px);
  }

  .pp-services-showcase__head {
padding:clamp(64px, 7vw, 92px) 0 clamp(58px, 6vw, 82px);
    margin-bottom:clamp(48px, 5vw, 72px);
  }

  .pp-services-showcase__head h2 {
max-width:900px;
    font-size:clamp(60px, 9vw, 104px);
    line-height:.88;
    letter-spacing:-.08em;
  }

  .pp-services-showcase__head p {
max-width:650px;
    margin-top:34px;
  }
}

@media (max-width:991px) {
  .pp-services-showcase .container {
width:calc(100% - 40px);
  }

  .pp-services-showcase__head {
padding:68px 0 58px;
  }

  .pp-services-showcase__eyebrow {
gap:14px;
    margin-bottom:28px;
    font-size:11px;
    letter-spacing:.26em;
  }

  .pp-services-showcase__eyebrow::before {
width:44px;
  }

  .pp-services-showcase__head h2 {
font-size:clamp(54px, 12vw, 86px);
    line-height:.9;
    letter-spacing:-.072em;
  }

  .pp-services-showcase__head p {
max-width:590px;
    margin-top:30px;
    font-size:clamp(19px, 2.4vw, 23px);
    line-height:1.55;
  }

  .pp-services-showcase__link {
margin-top:34px;
  }
}

@media (max-width:575px) {
  .pp-services-showcase {
padding:72px 0 74px;
  }

  .pp-services-showcase .container {
width:calc(100% - 26px);
  }

  .pp-services-showcase__head {
padding:54px 0 48px;
    margin-bottom:42px;
  }

  .pp-services-showcase__eyebrow {
font-size:10px;
    letter-spacing:.22em;
    margin-bottom:22px;
  }

  .pp-services-showcase__head h2 {
font-size:clamp(44px, 13vw, 62px);
    line-height:.9;
    letter-spacing:-.064em;
  }

  .pp-services-showcase__head p {
max-width:360px;
    margin-top:24px;
    font-size:17px;
    line-height:1.5;
  }

  .pp-services-showcase__link {
width:100%;
    justify-content:space-between;
    margin-top:30px;
    gap:20px;
    font-size:11px;
    letter-spacing:.16em;
    padding-bottom:13px;
  }

  .pp-services-showcase__link span {
font-size:22px;
  }
}

@media (max-width:390px) {
  .pp-services-showcase .container {
width:calc(100% - 22px);
  }

  .pp-services-showcase__head h2 {
font-size:42px;
  }

  .pp-services-showcase__head p {
font-size:16.5px;
  }
}

.pp-services-showcase__tabs {
display:grid;
  grid-template-columns:repeat(7, minmax(0, 1fr));
  gap:0;
  margin-bottom:clamp(56px, 5vw, 86px);
  border-bottom:1px solid var(--pp-services-line);
}

.pp-services-showcase__tab {
position:relative;
  min-height:154px;

  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:15px;

  padding:0 24px 34px 0;
  border:0;
  background:transparent;
  color:var(--pp-services-black);
  text-align:left;
  cursor:pointer;
}

.pp-services-showcase__tab::after {
content:"";
  position:absolute;
  left:0;
  bottom:-1px;
  width:0;
  height:3px;
  background:var(--pp-services-accent);
  transition:width .45s cubic-bezier(.22,1,.36,1);
}

.pp-services-showcase__tab span {
color:rgba(5,5,5,.62);
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:13px;
  line-height:1;
  font-weight:500;
  letter-spacing:.12em;
}

.pp-services-showcase__tab strong {
max-width:210px;

  color:var(--pp-services-black);
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(17px, 1.12vw, 22px);
  line-height:1.08;
  font-weight:500;
  letter-spacing:-.047em;

  transition:
    color .25s ease,
    transform .35s cubic-bezier(.22,1,.36,1);
}

.pp-services-showcase__tab:hover strong {
color:var(--pp-services-accent);
  transform:translateY(-3px);
}

.pp-services-showcase__tab.is-active span,
.pp-services-showcase__tab.is-active strong {
color:var(--pp-services-accent);
}

.pp-services-showcase__tab.is-active::after {
width:100%;
}

.pp-services-showcase__panels {
position:relative;
}

.pp-services-showcase__panel {
display:grid;
  grid-template-columns:minmax(0, 1.06fr) minmax(470px, .86fr);
  gap:clamp(62px, 6vw, 104px);
  align-items:center;
  animation:ppServicesPanelIn .62s cubic-bezier(.22,1,.36,1) both;
}

.pp-services-showcase__panel[hidden] {
display:none;
}

@keyframes ppServicesPanelIn {
from{
    opacity:0;
    transform:translateY(22px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* ========================================================= IMAGE GALLERY — COMO TRANSFERS ========================================================= */

.pp-services-showcase__media {
position:relative;
  margin:0;
  height:auto;
  overflow:hidden;
  border-radius:0;
  background:#070707;
  box-shadow:none;
}

.pp-services-showcase__media::after {
content:none;
  display:none;
}

.pp-services-showcase__gallery-viewport {
position:relative;
  width:100%;
  height:clamp(520px, 42vw, 760px);
  overflow:hidden;
  border-radius:0;
  background:#070707;
  isolation:isolate;
  cursor:grab;
  touch-action:pan-y;
  user-select:none;
  box-shadow:none;
}

.pp-services-showcase__gallery-viewport::after {
content:none;
  display:none;
}

.pp-services-showcase__gallery-slide {
position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  overflow:hidden;
  border-radius:0;

  opacity:0;
  visibility:hidden;
  transform:scale(1.035);

  transition:
    opacity .55s cubic-bezier(.22,1,.36,1),
    transform .85s cubic-bezier(.22,1,.36,1),
    visibility 0s linear .55s;

  will-change:opacity, transform;
}

.pp-services-showcase__gallery-slide.is-active {
z-index:4;
  opacity:1;
  visibility:visible;
  transform:scale(1);

  transition:
    opacity .55s cubic-bezier(.22,1,.36,1),
    transform .85s cubic-bezier(.22,1,.36,1),
    visibility 0s linear 0s;
}

.pp-services-showcase__gallery-slide.is-next,
.pp-services-showcase__gallery-slide.is-prev {
z-index:2;
  opacity:0;
  visibility:hidden;
  transform:scale(1.035);
}

.pp-services-showcase__gallery-slide img {
width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  pointer-events:none;
  user-select:none;

  filter:saturate(.88) contrast(1.08) brightness(.88);
  transform:scale(1.035);

  transition:
    transform .85s cubic-bezier(.22,1,.36,1),
    filter .55s cubic-bezier(.22,1,.36,1);
}

.pp-services-showcase__gallery-slide.is-active img {
transform:scale(1);
}

.pp-services-showcase__gallery-viewport {
transition:
    height .75s cubic-bezier(.22,1,.36,1),
    aspect-ratio .75s cubic-bezier(.22,1,.36,1);
}

.pp-services-showcase__media:hover .pp-services-showcase__gallery-slide.is-active img {
filter:saturate(.96) contrast(1.06) brightness(.96);
}

.pp-services-showcase__media.is-dragging .pp-services-showcase__gallery-viewport {
cursor:grabbing;
}

.pp-services-showcase__media.is-dragging .pp-services-showcase__gallery-slide {
transition:none;
}

.pp-services-showcase__media.is-dragging .pp-services-showcase__gallery-slide.is-active {
opacity:1;
  visibility:visible;
  transform:translateX(var(--pp-drag-x, 0px)) scale(1);
}

.pp-services-showcase__media.is-dragging .pp-services-showcase__gallery-slide.is-next {
opacity:1;
  visibility:visible;
  transform:translateX(calc(100% + var(--pp-drag-x, 0px))) scale(1);
}

.pp-services-showcase__media.is-dragging .pp-services-showcase__gallery-slide.is-prev {
opacity:1;
  visibility:visible;
  transform:translateX(calc(-100% + var(--pp-drag-x, 0px))) scale(1);
}

/* SETAS — COMO TRANSFERS */

.pp-services-showcase__gallery-nav {
position:absolute;
  top:50%;
  z-index:10;

  width:58px;
  height:58px;

  transform:translateY(-50%);
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;

  background:rgba(0,0,0,.38);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);

  display:flex;
  align-items:center;
  justify-content:center;

  opacity:0;
  visibility:hidden;

  cursor:pointer;

  transition:
    opacity .35s cubic-bezier(.22,1,.36,1),
    visibility .35s cubic-bezier(.22,1,.36,1),
    background .35s cubic-bezier(.22,1,.36,1),
    border-color .35s cubic-bezier(.22,1,.36,1),
    transform .35s cubic-bezier(.22,1,.36,1);
}

.pp-services-showcase__media:hover .pp-services-showcase__gallery-nav {
opacity:1;
  visibility:visible;
}

.pp-services-showcase__gallery-nav--prev {
left:clamp(18px, 1.8vw, 28px);
}

.pp-services-showcase__gallery-nav--next {
right:clamp(18px, 1.8vw, 28px);
}

.pp-services-showcase__gallery-nav::before {
content:"";
  width:13px;
  height:13px;
  border-top:2px solid #fff;
  border-right:2px solid #fff;
}

.pp-services-showcase__gallery-nav--prev::before {
transform:rotate(-135deg) translate(-1px, -1px);
}

.pp-services-showcase__gallery-nav--next::before {
transform:rotate(45deg) translate(-1px, 1px);
}

.pp-services-showcase__gallery-nav:hover {
background:#A58667;
  border-color:#A58667;
}

.pp-services-showcase__gallery-nav--prev:hover {
transform:translateY(-50%) translateX(-3px);
}

.pp-services-showcase__gallery-nav--next:hover {
transform:translateY(-50%) translateX(3px);
}

/* DOTS — BARRAS NO CANTO, COMO TRANSFERS */

.pp-services-showcase__gallery-dots {
position:absolute;
  left:clamp(26px, 2.4vw, 42px);
  bottom:clamp(22px, 2vw, 34px);
  z-index:11;

  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;

  margin:0;
  min-height:auto;
}

.pp-services-showcase__gallery-dots button {
width:34px;
  height:3px;
  min-width:0;
  min-height:0;

  display:block;
  padding:0;
  border:0;
  border-radius:999px;

  background:rgba(255,255,255,.36);
  cursor:pointer;
  opacity:1;

  transition:
    width .35s cubic-bezier(.22,1,.36,1),
    background .35s cubic-bezier(.22,1,.36,1),
    opacity .35s cubic-bezier(.22,1,.36,1);
}

.pp-services-showcase__gallery-dots button:hover {
transform:none;
  background:rgba(255,255,255,.62);
}

.pp-services-showcase__gallery-dots button.is-active {
width:56px;
  background:#A58667;
  transform:none;
}

@media (max-width:1199px) {
  .pp-services-showcase__gallery-viewport {
height:clamp(460px, 52vw, 640px);
  }

  .pp-services-showcase__gallery-nav {
width:52px;
    height:52px;
  }
}

@media (max-width:991px) {
  .pp-services-showcase__gallery-viewport {
height:clamp(420px, 64vw, 580px);
  }

  .pp-services-showcase__gallery-nav {
opacity:1;
    visibility:visible;
    width:48px;
    height:48px;
  }

  .pp-services-showcase__gallery-nav--prev {
left:16px;
  }

  .pp-services-showcase__gallery-nav--next {
right:16px;
  }

  .pp-services-showcase__gallery-dots {
left:22px;
    bottom:22px;
  }
}

@media (max-width:575px) {
  .pp-services-showcase__gallery-viewport {
height:clamp(320px, 82vw, 460px);
  }

  .pp-services-showcase__gallery-nav {
width:42px;
    height:42px;
  }

  .pp-services-showcase__gallery-nav::before {
width:10px;
    height:10px;
  }

  .pp-services-showcase__gallery-dots {
left:18px;
    bottom:18px;
    gap:8px;
  }

  .pp-services-showcase__gallery-dots button {
width:26px;
    height:3px;
  }

  .pp-services-showcase__gallery-dots button.is-active {
width:42px;
  }
}

@media (max-width:390px) {
  .pp-services-showcase__gallery-viewport {
height:300px;
  }
}

.pp-services-showcase__content {
max-width:780px;
  align-self:center;
}

.pp-services-showcase__service-label {
display:block;
  margin-bottom:24px;

  color:var(--pp-services-accent);
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:13px;
  line-height:1;
  font-weight:500;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.pp-services-showcase__content h3 {
max-width:820px;
  margin:0;

  color:var(--pp-services-black);
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(58px, 4.65vw, 92px);
  line-height:.88;
  font-weight:500;
  letter-spacing:-.084em;
}

.pp-services-showcase__content p {
max-width:720px;
  margin:30px 0 0;

  color:var(--pp-services-text);
  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(22px, 1.35vw, 27px);
  line-height:1.55;
  font-weight:400;
  letter-spacing:-.032em;
}

.pp-services-showcase__features {
display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:clamp(42px, 4vw, 74px);
  margin-top:56px;
  padding-top:42px;
  border-top:1px solid rgba(5,5,5,.14);
}

.pp-services-showcase__features div {
min-height:auto;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  transition:transform .35s cubic-bezier(.22,1,.36,1);
}

.pp-services-showcase__features div:hover {
transform:translateY(-4px);
  background:transparent;
  border-color:transparent;
  box-shadow:none;
}

.pp-services-showcase__features i {
display:flex;
  width:54px;
  height:54px;
  align-items:center;
  justify-content:flex-start;
  margin-bottom:22px;

  color:var(--pp-services-black);
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-style:normal;
  font-size:40px;
  line-height:1;
}

.pp-services-showcase__features strong {
display:block;
  max-width:270px;
  margin:0;

  color:var(--pp-services-black);
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(24px, 1.55vw, 34px);
  line-height:1.02;
  font-weight:500;
  letter-spacing:-.055em;
}

.pp-services-showcase__features span {
display:none;
}

@media (max-width:1399px) {
  .pp-services-showcase .container {
width:min(1280px, calc(100% - 48px));
  }

  .pp-services-showcase__head h2 {
font-size:clamp(76px, 9vw, 144px);
  }

  .pp-services-showcase__tabs {
grid-template-columns:repeat(7, minmax(112px, 1fr));
  }

  .pp-services-showcase__tab {
min-height:140px;
    padding-right:14px;
  }

  .pp-services-showcase__tab strong {
font-size:clamp(16px, 1vw, 19px);
  }

  .pp-services-showcase__panel {
grid-template-columns:minmax(0, 1fr) minmax(420px, .82fr);
    gap:58px;
  }

  .pp-services-showcase__gallery-viewport {
height:clamp(470px, 38vw, 640px);
  }

  .pp-services-showcase__content h3 {
font-size:clamp(52px, 4.7vw, 82px);
  }

  .pp-services-showcase__content p {
font-size:clamp(20px, 1.28vw, 24px);
  }

  .pp-services-showcase__features {
gap:34px;
  }

  .pp-services-showcase__features i {
width:48px;
    height:48px;
    margin-bottom:20px;
    font-size:36px;
  }

  .pp-services-showcase__features strong {
font-size:clamp(21px, 1.45vw, 28px);
  }
}

@media (max-width:1199px) {
  .pp-services-showcase__head {
grid-template-columns:1fr;
    gap:34px;
    margin-bottom:62px;
  }

  .pp-services-showcase__tabs {
overflow-x:auto;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    grid-template-columns:repeat(7, 180px);
  }

  .pp-services-showcase__tabs::-webkit-scrollbar {
display:none;
  }

  .pp-services-showcase__panel {
grid-template-columns:1fr;
    gap:48px;
  }

  .pp-services-showcase__gallery-viewport {
height:560px;
  }

  .pp-services-showcase__content {
max-width:960px;
  }

  .pp-services-showcase__features {
gap:40px;
  }
}

@media (max-width:991px) {
  .pp-services-showcase {
padding:82px 0 86px;
  }

  .pp-services-showcase .container {
width:calc(100% - 32px);
  }

  .pp-services-showcase__eyebrow {
gap:12px;
    font-size:11px;
    letter-spacing:.24em;
    margin-bottom:24px;
  }

  .pp-services-showcase__eyebrow::before {
width:44px;
  }

  .pp-services-showcase__head h2 {
font-size:clamp(54px, 13vw, 100px);
    line-height:.86;
    letter-spacing:-.082em;
  }

  .pp-services-showcase__tabs {
display:flex;
    flex-direction:column;
    gap:10px;
    margin-bottom:38px;
    border-bottom:0;
    overflow:visible;
  }

  .pp-services-showcase__tab {
min-height:82px;
    width:100%;

    display:grid;
    grid-template-columns:42px minmax(0, 1fr) 36px;
    align-items:center;
    gap:14px;

    padding:0 16px;
    border:1px solid rgba(5,5,5,.12);
    border-radius:12px;
    background:#ffffff;
  }

  .pp-services-showcase__tab::before {
content:"→";
    grid-column:3;
    grid-row:1;

    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;
    color:var(--pp-services-accent);
    border:1px solid rgba(165,134,103,.34);
    font-size:18px;

    transition:
      background .3s ease,
      color .3s ease,
      transform .3s ease;
  }

  .pp-services-showcase__tab::after {
display:none;
  }

  .pp-services-showcase__tab span {
grid-column:1;
    font-size:13px;
    color:var(--pp-services-accent);
  }

  .pp-services-showcase__tab strong {
grid-column:2;
    max-width:none;
    font-size:19px;
    line-height:1.08;
  }

  .pp-services-showcase__tab.is-active {
background:#ffffff;
    border-color:rgba(165,134,103,.42);
    box-shadow:0 16px 42px rgba(48,38,28,.08);
  }

  .pp-services-showcase__tab.is-active::before {
background:var(--pp-services-accent);
    color:#ffffff;
    transform:rotate(90deg);
  }

  .pp-services-showcase__gallery-viewport {
height:clamp(330px, 78vw, 500px);
    border-radius:14px;
  }

  .pp-services-showcase__gallery-slide,
  .pp-services-showcase__gallery-slide.is-next,
  .pp-services-showcase__gallery-slide.is-prev {
border-radius:14px;
  }

  .pp-services-showcase__gallery-dots {
margin-top:18px;
    gap:12px;
  }

  .pp-services-showcase__gallery-dots button {
width:12px;
    height:12px;
    min-width:12px;
    min-height:12px;
  }

  .pp-services-showcase__gallery-dots button.is-active {
transform:scale(1.22);
  }

  .pp-services-showcase__content h3 {
font-size:clamp(44px, 11vw, 72px);
    line-height:.9;
  }

  .pp-services-showcase__content p {
font-size:18px;
    line-height:1.5;
  }

  .pp-services-showcase__features {
grid-template-columns:1fr;
    gap:24px;
    margin-top:38px;
    padding-top:28px;
    border-top:1px solid rgba(5,5,5,.14);
  }

  .pp-services-showcase__features div {
min-height:auto;
    display:grid;
    grid-template-columns:52px minmax(0, 1fr);
    column-gap:18px;
    align-items:center;
    padding:0 0 22px;
    border:0;
    border-bottom:1px solid rgba(5,5,5,.10);
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }

  .pp-services-showcase__features i {
grid-row:auto;
    margin:0;
    width:52px;
    height:52px;
    font-size:34px;
  }

  .pp-services-showcase__features strong {
margin:0;
    max-width:none;
    font-size:26px;
    line-height:1.02;
    letter-spacing:-.055em;
  }
}

@media (max-width:575px) {
  .pp-services-showcase {
padding:72px 0 74px;
  }

  .pp-services-showcase .container {
width:calc(100% - 26px);
  }

  .pp-services-showcase__head {
margin-bottom:42px;
  }

  .pp-services-showcase__head h2 {
font-size:clamp(44px, 15vw, 70px);
    line-height:.88;
    letter-spacing:-.078em;
  }

  .pp-services-showcase__tab {
min-height:74px;
    grid-template-columns:36px minmax(0, 1fr) 32px;
    gap:10px;
    padding:0 12px;
  }

  .pp-services-showcase__tab strong {
font-size:17px;
  }

  .pp-services-showcase__tab::before {
width:30px;
    height:30px;
  }

  .pp-services-showcase__content h3 {
font-size:clamp(38px, 11.5vw, 52px);
  }

  .pp-services-showcase__content p {
font-size:17px;
  }

  .pp-services-showcase__features div {
grid-template-columns:46px minmax(0, 1fr);
    column-gap:14px;
    padding:0 0 18px;
  }

  .pp-services-showcase__features i {
width:46px;
    height:46px;
    font-size:30px;
  }

  .pp-services-showcase__features strong {
font-size:22px;
  }
}

@media (max-width:390px) {
  .pp-services-showcase .container {
width:calc(100% - 22px);
  }

  .pp-services-showcase__head h2 {
font-size:42px;
  }

  .pp-services-showcase__content p {
font-size:16px;
  }
}

/* ========================================================= SERVICES — TECNOLOGIAS E PROCESSOS / V4 PP TÊXTEIS — RESPONSIVE CLEAN EDITORIAL ========================================================= */

.pp-tech-processes-v4 {
--tech-black:#050505;
  --tech-white:#ffffff;
  --tech-soft:#f5f5f2;
  --tech-line:rgba(0,0,0,.12);
  --tech-muted:#75706a;
  --tech-accent:#A58667;

  position:relative;
  isolation:isolate;

  width:100%;
  max-width:100vw;

  padding:clamp(88px, 7vw, 142px) 0 clamp(88px, 7vw, 130px);

  overflow:clip;

  background:var(--tech-white);
  color:var(--tech-black);
}

@supports not (overflow:clip) {
  .pp-tech-processes-v4 {
overflow:hidden;
  }
}

.pp-tech-processes-v4 *,
.pp-tech-processes-v4 *::before,
.pp-tech-processes-v4 *::after {
box-sizing:border-box;
}

.pp-tech-processes-v4::before,
.pp-tech-processes-v4::after {
content:none;
  display:none;
}

.pp-tech-processes-v4 .container {
width:min(1680px, calc(100% - clamp(48px, 5vw, 96px)));
  max-width:none;
  min-width:0;

  margin-inline:auto;
  padding-inline:0;
}

.pp-tech-processes-v4__head {
min-width:0;
  margin-bottom:clamp(50px, 5.5vw, 88px);
}

.pp-tech-processes-v4__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;

  max-width:100%;
  margin-bottom:clamp(22px, 2vw, 32px);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(12px, .8vw, 14px);
  line-height:1.2;
  font-weight:500;
  letter-spacing:.26em;
  text-transform:uppercase;

  color:var(--tech-accent);
}

.pp-tech-processes-v4__eyebrow::before {
content:"";

  flex:0 0 auto;

  width:clamp(42px, 4.4vw, 70px);
  height:1px;

  background:var(--tech-accent);
}

.pp-tech-processes-v4__title-row {
display:block;
  min-width:0;
}

.pp-tech-processes-v4__title-row h2 {
max-width:1120px;
  margin:0;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(58px, 7vw, 122px);
  line-height:.88;
  font-weight:500;
  letter-spacing:-.078em;

  overflow-wrap:normal;

  color:var(--tech-black);
}

.pp-tech-processes-v4__title-row p {
display:none;
}

.pp-tech-processes-v4__board {
display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(290px, 390px);
  gap:clamp(26px, 3vw, 46px);
  align-items:stretch;

  width:100%;
  min-width:0;
}

.pp-tech-processes-v4__stage {
position:relative;
  isolation:isolate;

  display:block;

  width:100%;
  min-width:0;

  height:clamp(590px, 44vw, 790px);
  min-height:0;

  overflow:hidden;

  border:1px solid rgba(0,0,0,.08);
  border-radius:0;

  background:var(--tech-black);
}

.pp-tech-processes-v4__media {
position:absolute;
  inset:0;
  z-index:1;

  overflow:hidden;

  background:var(--tech-black);
}

.pp-tech-processes-v4__media img {
position:absolute;
  inset:0;

  display:block;

  width:100%;
  height:100%;
  max-width:none;

  object-fit:cover;
  object-position:center;

  opacity:0;
  visibility:hidden;

  transform:scale(1.035);

  filter:
    saturate(.9)
    contrast(1.04)
    brightness(.84);

  transition:
    opacity .55s cubic-bezier(.22,1,.36,1),
    visibility .55s cubic-bezier(.22,1,.36,1),
    transform 1s cubic-bezier(.22,1,.36,1),
    filter .55s cubic-bezier(.22,1,.36,1);
}

.pp-tech-processes-v4__media img.is-active {
opacity:1;
  visibility:visible;

  transform:scale(1);
}

.pp-tech-processes-v4__stage:hover
.pp-tech-processes-v4__media img.is-active {
filter:
    saturate(.96)
    contrast(1.03)
    brightness(.91);
}

.pp-tech-processes-v4__overlay {
position:absolute;
  inset:0;
  z-index:2;

  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      rgba(0,0,0,.08) 0%,
      rgba(0,0,0,.06) 34%,
      rgba(0,0,0,.24) 58%,
      rgba(0,0,0,.9) 100%
    );
}

.pp-tech-processes-v4__counter {
position:absolute;
  top:clamp(22px, 2.2vw, 36px);
  right:clamp(22px, 2.2vw, 36px);
  z-index:5;

  display:flex;
  align-items:flex-start;
  gap:8px;

  color:var(--tech-white);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );
}

.pp-tech-processes-v4__counter span {
display:block;

  font-size:clamp(42px, 4vw, 72px);
  line-height:.82;
  letter-spacing:-.06em;
}

.pp-tech-processes-v4__counter small {
display:block;

  padding-top:8px;

  font-size:clamp(12px, .9vw, 16px);
  line-height:1;
  letter-spacing:.08em;

  color:rgba(255,255,255,.68);
}

.pp-tech-processes-v4__active-copy {
position:absolute;
  inset:0;
  z-index:4;

  width:100%;
  min-width:0;

  pointer-events:none;
}

.pp-tech-processes-v4__active-copy article {
position:absolute;

  left:clamp(30px, 3.7vw, 56px);
  right:clamp(30px, 3.7vw, 56px);
  bottom:clamp(30px, 3.7vw, 56px);

  max-width:800px;

  opacity:0;
  visibility:hidden;

  transform:translateY(18px);

  transition:
    opacity .42s cubic-bezier(.22,1,.36,1),
    visibility .42s cubic-bezier(.22,1,.36,1),
    transform .42s cubic-bezier(.22,1,.36,1);
}

.pp-tech-processes-v4__active-copy article.is-active {
opacity:1;
  visibility:visible;

  transform:translateY(0);
}

.pp-tech-processes-v4__active-copy article > span {
display:inline-block;

  margin-bottom:clamp(12px, 1.3vw, 20px);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:13px;
  line-height:1;
  letter-spacing:.22em;
  text-transform:uppercase;

  color:var(--tech-accent);
}

.pp-tech-processes-v4__active-copy h3 {
max-width:760px;

  margin:0 0 clamp(16px, 1.6vw, 26px);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(54px, 5.3vw, 98px);
  line-height:.9;
  font-weight:500;
  letter-spacing:-.07em;

  overflow-wrap:break-word;

  color:var(--tech-white);
}

.pp-tech-processes-v4__active-copy p {
max-width:690px;
  margin:0;

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(18px, 1.28vw, 24px);
  line-height:1.42;
  font-weight:400;
  letter-spacing:-.025em;

  color:rgba(255,255,255,.82);
}

/* ========================================================= BOTÕES DOS PROCESSOS ========================================================= */

.pp-tech-processes-v4__nav {
display:grid;
  grid-template-columns:1fr;
  align-content:start;

  width:100%;
  min-width:0;

  border-top:1px solid var(--tech-line);

  background:var(--tech-white);
}

.pp-tech-processes-v4__nav button {
width:100%;
  min-width:0;

  min-height:clamp(78px, 6vw, 98px);
  padding:clamp(17px, 1.7vw, 25px) 0;

  display:grid;
  grid-template-columns:52px minmax(0, 1fr);
  align-items:center;
  gap:16px;

  text-align:left;

  border:0;
  border-bottom:1px solid var(--tech-line);

  background:transparent;
  color:var(--tech-black);

  cursor:pointer;

  transition:
    background .32s cubic-bezier(.22,1,.36,1),
    color .32s cubic-bezier(.22,1,.36,1),
    padding .32s cubic-bezier(.22,1,.36,1);
}

.pp-tech-processes-v4__nav button span {
display:block;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:13px;
  line-height:1;
  letter-spacing:.08em;

  color:var(--tech-muted);

  transition:color .32s cubic-bezier(.22,1,.36,1);
}

.pp-tech-processes-v4__nav button strong {
display:block;

  min-width:0;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(19px, 1.3vw, 24px);
  line-height:1.04;
  font-weight:500;
  letter-spacing:-.04em;

  overflow-wrap:break-word;

  color:currentColor;
}

@media (hover:hover) and (pointer:fine) {
  .pp-tech-processes-v4__nav button:hover {
padding-left:14px;

    background:var(--tech-soft);
  }
}

.pp-tech-processes-v4__nav button.is-active {
padding-left:18px;

  background:var(--tech-black);
  color:var(--tech-white);
}

.pp-tech-processes-v4__nav button.is-active span {
color:var(--tech-accent);
}

.pp-tech-processes-v4__nav button:focus-visible {
position:relative;
  z-index:2;

  outline:2px solid var(--tech-accent);
  outline-offset:-2px;
}

@media (min-width:1800px) {
  .pp-tech-processes-v4__stage {
height:790px;
  }

  .pp-tech-processes-v4__board {
grid-template-columns:minmax(0, 1fr) 390px;
  }
}

@media (min-width:1200px) and (max-width:1499px) {
  .pp-tech-processes-v4 {
padding:88px 0 104px;
  }

  .pp-tech-processes-v4 .container {
width:calc(100% - 56px);
  }

  .pp-tech-processes-v4__title-row h2 {
font-size:clamp(58px, 7vw, 108px);
  }

  .pp-tech-processes-v4__board {
grid-template-columns:minmax(0, 1fr) minmax(280px, 350px);
    gap:30px;
  }

  .pp-tech-processes-v4__stage {
height:clamp(570px, 48vw, 680px);
  }

  .pp-tech-processes-v4__active-copy h3 {
font-size:clamp(50px, 5vw, 82px);
  }

  .pp-tech-processes-v4__active-copy p {
font-size:clamp(18px, 1.25vw, 22px);
  }
}

@media (max-width:1199px) {
  .pp-tech-processes-v4 {
padding:
      clamp(76px, 8vw, 108px)
      0
      clamp(76px, 8vw, 104px);
  }

  .pp-tech-processes-v4 .container {
width:calc(100% - 48px);
  }

  .pp-tech-processes-v4__head {
margin-bottom:46px;
  }

  .pp-tech-processes-v4__title-row h2 {
max-width:880px;

    font-size:clamp(54px, 8.7vw, 100px);
  }

  .pp-tech-processes-v4__board {
grid-template-columns:minmax(0, 1fr);
    gap:24px;
  }

  .pp-tech-processes-v4__stage {
height:clamp(520px, 62vw, 680px);
  }

  .pp-tech-processes-v4__nav {
grid-template-columns:repeat(3, minmax(0, 1fr));

    border-left:1px solid var(--tech-line);
  }

  .pp-tech-processes-v4__nav button {
min-height:88px;
    padding:18px;

    grid-template-columns:1fr;
    align-content:center;
    gap:9px;

    border-right:1px solid var(--tech-line);
  }

  .pp-tech-processes-v4__nav button.is-active {
padding-left:18px;
  }

  .pp-tech-processes-v4__nav button strong {
font-size:20px;
  }
}

@media (min-width:768px) and (max-width:991px) {
  .pp-tech-processes-v4 .container {
width:calc(100% - 42px);
  }

  .pp-tech-processes-v4__stage {
height:clamp(500px, 67vw, 620px);
  }

  .pp-tech-processes-v4__active-copy h3 {
max-width:700px;

    font-size:clamp(48px, 7.5vw, 72px);
  }

  .pp-tech-processes-v4__active-copy p {
max-width:620px;

    font-size:19px;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-tech-processes-v4 {
padding:68px 0 74px;
  }

  .pp-tech-processes-v4 .container {
width:calc(100% - 30px);
  }

  .pp-tech-processes-v4__eyebrow {
gap:12px;

    margin-bottom:20px;

    font-size:10.5px;
    line-height:1.3;
    letter-spacing:.21em;
  }

  .pp-tech-processes-v4__eyebrow::before {
width:32px;
  }

  .pp-tech-processes-v4__head {
margin-bottom:34px;
  }

  .pp-tech-processes-v4__title-row h2 {
max-width:9.2ch;

    font-size:clamp(40px, 12vw, 60px);
    line-height:.93;
    letter-spacing:-.068em;
  }

  .pp-tech-processes-v4__board {
gap:18px;
  }

  .pp-tech-processes-v4__stage {
height:clamp(500px, 132vw, 625px);
  }

  .pp-tech-processes-v4__media img {
object-position:center center;

    filter:
      saturate(.92)
      contrast(1.03)
      brightness(.88);
  }

  .pp-tech-processes-v4__overlay {
background:
      linear-gradient(
        180deg,
        rgba(0,0,0,.08) 0%,
        rgba(0,0,0,.08) 38%,
        rgba(0,0,0,.38) 62%,
        rgba(0,0,0,.94) 100%
      );
  }

  .pp-tech-processes-v4__counter {
top:18px;
    right:18px;
    gap:6px;
  }

  .pp-tech-processes-v4__counter span {
font-size:38px;
  }

  .pp-tech-processes-v4__counter small {
padding-top:5px;

    font-size:11px;
  }

  .pp-tech-processes-v4__active-copy article {
left:22px;
    right:22px;
    bottom:24px;

    max-width:none;
  }

  .pp-tech-processes-v4__active-copy article > span {
margin-bottom:11px;

    font-size:10.5px;
  }

  .pp-tech-processes-v4__active-copy h3 {
max-width:9.5ch;

    margin-bottom:14px;

    font-size:clamp(36px, 10.6vw, 50px);
    line-height:.94;
    letter-spacing:-.06em;
  }

  .pp-tech-processes-v4__active-copy p {
max-width:36rem;

    font-size:clamp(15px, 4.2vw, 17px);
    line-height:1.42;
    letter-spacing:-.018em;
  }

  .pp-tech-processes-v4__nav {
grid-template-columns:repeat(2, minmax(0, 1fr));

    width:100%;
    max-width:100%;
    min-width:0;

    overflow:visible;

    border-left:1px solid var(--tech-line);
  }

  .pp-tech-processes-v4__nav button {
min-width:0;
    min-height:84px;

    padding:15px 13px;

    grid-template-columns:1fr;
    align-content:center;
    gap:8px;

    border-right:1px solid var(--tech-line);
    border-bottom:1px solid var(--tech-line);
  }

  .pp-tech-processes-v4__nav button.is-active {
padding-left:13px;
  }

  .pp-tech-processes-v4__nav button span {
font-size:11px;
  }

  .pp-tech-processes-v4__nav button strong {
font-size:clamp(16px, 4.6vw, 19px);
    line-height:1.08;
    letter-spacing:-.03em;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:480px) {
  .pp-tech-processes-v4 .container {
width:calc(100% - 24px);
  }

  .pp-tech-processes-v4__stage {
height:clamp(500px, 145vw, 610px);
  }

  .pp-tech-processes-v4__active-copy article {
left:20px;
    right:20px;
    bottom:22px;
  }

  .pp-tech-processes-v4__active-copy h3 {
font-size:clamp(35px, 10.7vw, 46px);
  }

  .pp-tech-processes-v4__active-copy p {
font-size:15.5px;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

@media (max-width:360px) {
  .pp-tech-processes-v4 {
padding-top:60px;
  }

  .pp-tech-processes-v4__title-row h2 {
font-size:38px;
  }

  .pp-tech-processes-v4__stage {
height:520px;
  }

  .pp-tech-processes-v4__counter {
display:none;
  }

  .pp-tech-processes-v4__active-copy article {
left:18px;
    right:18px;
    bottom:20px;
  }

  .pp-tech-processes-v4__active-copy h3 {
font-size:34px;
  }

  .pp-tech-processes-v4__active-copy p {
font-size:15px;
  }

  .pp-tech-processes-v4__nav button {
min-height:82px;

    padding:14px 11px;
  }

  .pp-tech-processes-v4__nav button.is-active {
padding-left:11px;
  }

  .pp-tech-processes-v4__nav button strong {
font-size:15.5px;
  }
}

/* ========================================================= MOBILE HORIZONTAL ========================================================= */

@media (max-width:767px) and (orientation:landscape) {
  .pp-tech-processes-v4__stage {
height:clamp(390px, 82svh, 500px);
  }

  .pp-tech-processes-v4__active-copy h3 {
max-width:15ch;

    font-size:clamp(34px, 7vw, 46px);
  }

  .pp-tech-processes-v4__active-copy p {
max-width:42rem;

    font-size:15px;
  }

  .pp-tech-processes-v4__nav {
grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-tech-processes-v4__media img,
  .pp-tech-processes-v4__active-copy article,
  .pp-tech-processes-v4__nav button {
transition:none !important;
  }
}

/* ========================================================= SERVICES — FAQ EDITORIAL RESPONSIVE — DESKTOP / TABLET / MOBILE ========================================================= */

#faq.pp-faq-editorial {
--pp-faq-bg:#000000;
  --pp-faq-text:#ffffff;
  --pp-faq-muted:rgba(255,255,255,.62);
  --pp-faq-soft:rgba(255,255,255,.46);
  --pp-faq-line:rgba(255,255,255,.15);
  --pp-faq-hover:rgba(255,255,255,.035);
  --pp-faq-accent:#A58667;

  position:relative;
  isolation:isolate;

  display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0;

  padding:
    clamp(100px, 9vw, 154px)
    0
    clamp(105px, 9vw, 160px);

  overflow:hidden;

  background:var(--pp-faq-bg);
  color:var(--pp-faq-text);
}

#faq.pp-faq-editorial *,
#faq.pp-faq-editorial *::before,
#faq.pp-faq-editorial *::after {
box-sizing:border-box;
}

#faq.pp-faq-editorial > .container {
position:relative;
  z-index:2;

  display:block;

  width:min(1320px, calc(100% - clamp(40px, 5vw, 96px)));
  max-width:none;
  min-width:0;

  margin:0 auto;

  padding:0;
}

#faq .pp-faq-editorial__head {
display:block;

  width:100%;
  max-width:980px;
  min-width:0;

  margin:
    0
    auto
    clamp(50px, 5vw, 78px);

  padding:0;

  text-align:center;
}

#faq .pp-faq-editorial__eyebrow {
display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:14px;

  max-width:100%;

  margin:
    0
    0
    clamp(20px, 1.8vw, 28px);

  padding:0;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1;
  font-weight:500;
  letter-spacing:.22em;
  text-transform:uppercase;

  white-space:normal;

  color:var(--pp-faq-soft);
}

#faq .pp-faq-editorial__eyebrow::before,
#faq .pp-faq-editorial__eyebrow::after {
content:"";

  display:block;
  flex:0 0 auto;

  width:clamp(28px, 3vw, 44px);
  height:1px;

  background:rgba(165,134,103,.8);
}

#faq .pp-faq-editorial__title {
display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  margin:
    0
    0
    clamp(20px, 2vw, 28px);

  padding:0;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(52px, 6vw, 94px);
  line-height:.96;
  font-weight:500;
  letter-spacing:-.065em;

  text-align:center;
  text-wrap:balance;

  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;

  color:var(--pp-faq-text);
}

#faq .pp-faq-editorial__intro {
display:block;

  width:100%;
  max-width:780px;
  min-width:0;

  margin:0 auto;
  padding:0;

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(17px, 1.25vw, 21px);
  line-height:1.62;
  font-weight:400;
  letter-spacing:-.018em;

  text-align:center;

  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;

  color:var(--pp-faq-muted);
}

#faq .pp-faq-editorial__list {
display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0;
  padding:0;

  border-top:1px solid var(--pp-faq-line);

  background:transparent;
}

#faq .pp-faq-item {
position:relative;

  display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0;
  padding:0;

  overflow:hidden;

  border:0;
  border-bottom:1px solid var(--pp-faq-line);

  background:transparent;

  transition:
    background-color .35s cubic-bezier(.22,1,.36,1),
    border-color .35s ease;
}

#faq .pp-faq-item::before,
#faq .pp-faq-item::after,
#faq .pp-faq-item.is-active::before,
#faq .pp-faq-item.is-active::after {
content:none !important;
  display:none !important;

  width:0 !important;
  height:0 !important;

  background:none !important;
  border:0 !important;

  transform:none !important;
  opacity:0 !important;
}

@media (hover:hover) and (pointer:fine) {
  #faq .pp-faq-item:hover {
background:var(--pp-faq-hover);
  }
}

#faq .pp-faq-item__trigger {
position:relative;
  z-index:2;

  display:grid !important;
  grid-template-columns:minmax(0, 1fr) auto;
  align-items:center;

  gap:clamp(22px, 3vw, 44px);

  width:100%;
  max-width:100%;
  min-width:0;

  min-height:clamp(100px, 8vw, 132px);

  margin:0;

  padding:
    clamp(28px, 2.5vw, 40px)
    0;

  border:0;
  border-radius:0;
  outline:0;

  background:transparent;
  color:var(--pp-faq-text);

  font:inherit;

  text-align:left;

  cursor:pointer;

  appearance:none;
  -webkit-appearance:none;

  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;

  pointer-events:auto;
}

#faq .pp-faq-item__trigger:hover,
#faq .pp-faq-item__trigger:active {
background:transparent;
  color:var(--pp-faq-text);
}

#faq .pp-faq-item__question {
display:block;

  width:100%;
  max-width:30ch;
  min-width:0;

  margin:0;
  padding:0;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(28px, 2.4vw, 40px);
  line-height:1.08;
  font-weight:500;
  letter-spacing:-.045em;

  text-align:left;
  text-wrap:pretty;

  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;

  color:var(--pp-faq-text);
}

#faq .pp-faq-item__icon {
position:relative;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  width:clamp(46px, 4vw, 58px);
  height:clamp(46px, 4vw, 58px);

  min-width:clamp(46px, 4vw, 58px);
  min-height:clamp(46px, 4vw, 58px);

  flex:0 0 auto;

  margin:0;
  padding:0;

  border:1px solid rgba(255,255,255,.24);
  border-radius:50%;

  background:transparent;
  color:var(--pp-faq-text);

  pointer-events:none;

  transition:
    transform .42s cubic-bezier(.22,1,.36,1),
    background-color .35s ease,
    border-color .35s ease,
    color .35s ease;
}

#faq .pp-faq-item__icon svg {
display:block;

  width:18px;
  height:18px;

  margin:0;
  padding:0;

  overflow:visible;

  fill:none;

  pointer-events:none;
}

#faq .pp-faq-item__icon path {
fill:none;

  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;

  pointer-events:none;
}

#faq .pp-faq-item.is-active .pp-faq-item__icon {
transform:rotate(180deg);

  border-color:var(--pp-faq-accent);

  background:var(--pp-faq-accent);
  color:#ffffff;
}

#faq .pp-faq-item__answer {
position:relative;

  display:grid !important;
  grid-template-rows:0fr;

  width:100%;
  max-width:100%;
  min-width:0;

  max-height:0;

  margin:0;
  padding:0;

  overflow:hidden;

  opacity:0;
  visibility:hidden;

  pointer-events:none;

  transition:
    grid-template-rows .48s cubic-bezier(.22,1,.36,1),
    max-height .48s cubic-bezier(.22,1,.36,1),
    opacity .3s ease,
    visibility .3s ease;
}

#faq .pp-faq-item.is-active .pp-faq-item__answer {
grid-template-rows:1fr;

  max-height:1000px;

  opacity:1;
  visibility:visible;

  pointer-events:auto;
}

#faq .pp-faq-item__answer-inner {
display:block;

  width:100%;
  max-width:920px;
  min-width:0;
  min-height:0;

  margin:0;

  padding:
    0
    clamp(68px, 7vw, 112px)
    0
    0;

  overflow:hidden;

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(17px, 1.25vw, 20px);
  line-height:1.7;
  font-weight:400;
  letter-spacing:-.015em;

  text-align:left;

  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;

  color:var(--pp-faq-muted);

  transition:
    padding-bottom .42s cubic-bezier(.22,1,.36,1);
}

#faq .pp-faq-item.is-active .pp-faq-item__answer-inner {
padding-bottom:clamp(30px, 3vw, 46px);
}

#faq .pp-faq-item__trigger:focus {
outline:0;
}

#faq .pp-faq-item__trigger:focus-visible {
outline:2px solid var(--pp-faq-accent);
  outline-offset:-2px;
}

#faq .pp-faq-item__trigger:focus-visible
.pp-faq-item__icon {
border-color:var(--pp-faq-accent);
}

@media (min-width:1600px) {
  #faq.pp-faq-editorial > .container {
width:min(1400px, calc(100% - 120px));
  }

  #faq .pp-faq-editorial__head {
max-width:1040px;
  }

  #faq .pp-faq-editorial__list {
max-width:1360px;

    margin-right:auto;
    margin-left:auto;
  }

  #faq .pp-faq-item__question {
max-width:32ch;
  }
}

@media (min-width:992px) and (max-width:1279px) {
  #faq.pp-faq-editorial {
padding:
      110px
      0
      120px;
  }

  #faq.pp-faq-editorial > .container {
width:calc(100% - 56px);
  }

  #faq .pp-faq-editorial__title {
font-size:clamp(52px, 6.5vw, 78px);
  }

  #faq .pp-faq-item__trigger {
min-height:106px;
  }

  #faq .pp-faq-item__question {
font-size:clamp(27px, 2.7vw, 35px);
  }
}

@media (max-width:991px) {
  #faq.pp-faq-editorial {
padding:
      94px
      0
      102px;
  }

  #faq.pp-faq-editorial > .container {
width:calc(100% - 44px);
  }

  #faq .pp-faq-editorial__head {
max-width:760px;

    margin-bottom:46px;
  }

  #faq .pp-faq-editorial__title {
font-size:clamp(46px, 8vw, 70px);
  }

  #faq .pp-faq-editorial__intro {
max-width:680px;

    font-size:17px;
    line-height:1.62;
  }

  #faq .pp-faq-item__trigger {
grid-template-columns:minmax(0, 1fr) 48px;

    gap:24px;

    min-height:94px;

    padding:26px 0;
  }

  #faq .pp-faq-item__question {
max-width:none;

    font-size:clamp(25px, 3.6vw, 32px);
    line-height:1.1;
  }

  #faq .pp-faq-item__icon {
width:48px;
    height:48px;

    min-width:48px;
    min-height:48px;
  }

  #faq .pp-faq-item__answer-inner {
max-width:760px;

    padding-right:64px;

    font-size:17px;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  #faq.pp-faq-editorial {
padding:
      76px
      0
      84px;
  }

  #faq.pp-faq-editorial > .container {
width:calc(100% - 32px);
    max-width:none;
    min-width:0;

    margin-right:auto;
    margin-left:auto;

    padding:0;
  }

  #faq .pp-faq-editorial__head {
width:100%;
    max-width:100%;
    min-width:0;

    margin:
      0
      0
      38px;

    text-align:left;
  }

  #faq .pp-faq-editorial__eyebrow {
justify-content:flex-start;

    margin-bottom:18px;

    font-size:10.5px;
    letter-spacing:.2em;
  }

  #faq .pp-faq-editorial__eyebrow::before {
width:30px;
  }

  #faq .pp-faq-editorial__eyebrow::after {
display:none;
  }

  #faq .pp-faq-editorial__title {
width:100%;
    max-width:100%;
    min-width:0;

    margin-bottom:20px;

    font-size:clamp(40px, 11.5vw, 56px);
    line-height:.96;
    letter-spacing:-.06em;

    text-align:left;
    text-wrap:balance;

    white-space:normal;
    word-break:normal;
    overflow-wrap:normal;
  }

  #faq .pp-faq-editorial__intro {
width:100%;
    max-width:34rem;
    min-width:0;

    margin:0;

    font-size:16px;
    line-height:1.58;

    text-align:left;
  }

  #faq .pp-faq-editorial__list {
width:100%;
    max-width:100%;
    min-width:0;
  }

  #faq .pp-faq-item {
width:100%;
    max-width:100%;
    min-width:0;
  }

  #faq .pp-faq-item__trigger {
grid-template-columns:minmax(0, 1fr) 40px;

    gap:18px;

    width:100%;
    max-width:100%;
    min-width:0;

    min-height:88px;

    padding:23px 0;

    cursor:pointer;
  }

  #faq .pp-faq-item__question {
width:100%;
    max-width:100%;
    min-width:0;

    font-size:clamp(21px, 6vw, 27px);
    line-height:1.12;
    letter-spacing:-.038em;

    white-space:normal;
    word-break:normal;
    overflow-wrap:break-word;
  }

  #faq .pp-faq-item__icon {
width:40px;
    height:40px;

    min-width:40px;
    min-height:40px;
  }

  #faq .pp-faq-item__icon svg {
width:16px;
    height:16px;
  }

  #faq .pp-faq-item__answer {
width:100%;
    max-width:100%;
    min-width:0;
  }

  #faq .pp-faq-item.is-active .pp-faq-item__answer {
max-height:1200px;
  }

  #faq .pp-faq-item__answer-inner {
width:100%;
    max-width:100%;
    min-width:0;

    padding-right:0;

    font-size:15.5px;
    line-height:1.62;
  }

  #faq .pp-faq-item.is-active
  .pp-faq-item__answer-inner {
padding-bottom:26px;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:480px) {
  #faq.pp-faq-editorial {
padding:
      68px
      0
      76px;
  }

  #faq.pp-faq-editorial > .container {
width:calc(100% - 24px);
  }

  #faq .pp-faq-editorial__head {
margin-bottom:32px;
  }

  #faq .pp-faq-editorial__title {
font-size:clamp(36px, 11.5vw, 48px);
    line-height:.98;
  }

  #faq .pp-faq-editorial__intro {
font-size:15.5px;
  }

  #faq .pp-faq-item__trigger {
grid-template-columns:minmax(0, 1fr) 36px;

    gap:15px;

    min-height:82px;

    padding:21px 0;
  }

  #faq .pp-faq-item__question {
font-size:clamp(20px, 6.1vw, 25px);
    line-height:1.13;
  }

  #faq .pp-faq-item__icon {
width:36px;
    height:36px;

    min-width:36px;
    min-height:36px;
  }

  #faq .pp-faq-item__icon svg {
width:15px;
    height:15px;
  }

  #faq .pp-faq-item__answer-inner {
font-size:15px;
    line-height:1.6;
  }

  #faq .pp-faq-item.is-active
  .pp-faq-item__answer-inner {
padding-bottom:24px;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

@media (max-width:360px) {
  #faq.pp-faq-editorial > .container {
width:calc(100% - 20px);
  }

  #faq .pp-faq-editorial__title {
font-size:34px;
  }

  #faq .pp-faq-editorial__intro {
font-size:15px;
  }

  #faq .pp-faq-item__trigger {
grid-template-columns:minmax(0, 1fr) 34px;

    gap:13px;

    padding:19px 0;
  }

  #faq .pp-faq-item__question {
font-size:19px;
  }

  #faq .pp-faq-item__icon {
width:34px;
    height:34px;

    min-width:34px;
    min-height:34px;
  }
}

/* ========================================================= MOBILE HORIZONTAL ========================================================= */

@media (max-width:767px) and (orientation:landscape) {
  #faq.pp-faq-editorial {
padding:
      70px
      0
      78px;
  }

  #faq.pp-faq-editorial > .container {
width:calc(100% - 48px);
  }

  #faq .pp-faq-editorial__head {
max-width:680px;

    margin-left:0;
  }

  #faq .pp-faq-editorial__title {
font-size:clamp(38px, 7vw, 52px);
  }

  #faq .pp-faq-item__question {
font-size:clamp(21px, 3.5vw, 27px);
  }
}

@media (prefers-reduced-motion:reduce) {
  #faq .pp-faq-item,
  #faq .pp-faq-item__answer,
  #faq .pp-faq-item__answer-inner,
  #faq .pp-faq-item__icon {
transition:none !important;
  }
}

/* ========================================================= SUSTAINABILITY ========================================================= */

/* ========================================================= HERO HOME B ========================================================= */

/* ========================================================= TRANSFERS — MATERIAL DEVELOPMENT SECTION / CLEAN PREMIUM V4 Substitui todos os blocos antigos .pp-transfer-lab ========================================================= */

/* ========================================================= TOP HERO ========================================================= */

/* ========================================================= MOBILE ========================================================= */

/* ========================================================= MOBILE PEQUENO ========================================================= */

/* ========================================================= TRANSFERS — TYPES SHOWCASE / CLEAN PREMIUM V3 Substitui todo o bloco antigo .pp-transfer-systems ========================================================= */

/* ========================================================= MOBILE ========================================================= */

/* ========================================================= MOBILE PEQUENO ========================================================= */

/* ========================================================= TRANSFERS — FAQ REFINED / LIGHT + GOLD DETAIL ========================================================= */

/* ========================================================= TRANSFERS — FAQ FIX / CLOSED ANSWERS ========================================================= */

/* ========================================================= TRANSFERS — FINAL CTA / PREMIUM DARK ========================================================= */

/* Reveal extra para esta CTA */

/* ========================================================= TRANSFERS — APPLICATIONS DARK SHOWCASE ========================================================= */

/* ========================================================= SUBLIMAÇÃO — COLOR PROCESS INTRO / PREMIUM DARK Substitui a antiga .pp-sub-overview-banner em sublimation.html ========================================================= */

/* ========================= HERO SPLIT ========================= */

/* ========================= PROCESS BOTTOM ========================= */

/* ========================================================= SUBLIMAÇÃO — COLORFUL / IRIDESCENT OVERRIDE Cola depois do bloco atual .pp-sublimation-lab ========================================================= */

/* ========================= BOTTOM PROCESS AREA ========================= */

.pp-sub-materials-side--sublimation .container {
position:relative;
  z-index:2;
  max-width:1460px;
}

/* manter lógica de botões, mas encaixados no novo design */

@media (max-width:420px) {
  .pp-sub-materials-side--sublimation .container {
padding-left:14px;
    padding-right:14px;
  }
}

.pp-sub-materials-side--sublimation .container {
position:relative !important;
  z-index:2 !important;
}

/* ========================================================= WHY SUBLIMATION ========================================================= */

.pp-sub-materials-side .container {
position:relative;
  z-index:2;
  max-width:1460px;
}

/* ========================================================= SUBLIMAÇÃO — TECHNOLOGIES / IRIDESCENT PROCESS SLIDER Substitui visualmente .pp-sub-tech-stack apenas nesta página ========================================================= */

/* ========================= PROCESS RAIL ========================= */

.pp-faq-editorial--sublimation .container {
position:relative;
  z-index:2;
}

.pp-faq-editorial--sublimation .pp-faq-editorial__head {
max-width:980px;
  margin:0 auto 74px;
}

.pp-faq-editorial--sublimation .pp-faq-editorial__eyebrow {
display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  margin-bottom:24px;
  color:rgba(16,18,23,.52);
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:12px;
  line-height:1;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.pp-faq-editorial--sublimation .pp-faq-editorial__eyebrow::before {
content:"";
  width:36px;
  height:1px;
  background:linear-gradient(90deg, var(--faq-cyan), var(--faq-magenta), var(--faq-coral));
}

.pp-faq-editorial--sublimation .pp-faq-editorial__title {
margin:0;
  color:var(--faq-ink);
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(54px, 6vw, 98px);
  line-height:.94;
  letter-spacing:-.065em;
}

.pp-faq-editorial--sublimation .pp-faq-editorial__intro {
max-width:760px;
  margin:26px auto 0;
  color:var(--faq-muted);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(17px, 1.15vw, 21px);
  line-height:1.62;
  letter-spacing:-.018em;
}

.pp-faq-editorial--sublimation .pp-faq-editorial__list {
max-width:1120px;
  margin:0 auto;
  border:1px solid var(--faq-line);
  background:
    linear-gradient(135deg, rgba(255,255,255,.74), rgba(255,255,255,.38)),
    rgba(255,250,244,.56);
  box-shadow:
    0 34px 90px rgba(28,34,44,.08),
    inset 0 1px 0 rgba(255,255,255,.82);
}

.pp-faq-editorial--sublimation .pp-faq-item {
position:relative;
  background:transparent;
  border-bottom:1px solid rgba(165,134,103,.20);
  overflow:hidden;
}

.pp-faq-editorial--sublimation .pp-faq-item:last-child {
border-bottom:0;
}

.pp-faq-editorial--sublimation .pp-faq-item::before {
content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  transform:scaleY(0);
  transform-origin:top;
  background:linear-gradient(180deg, var(--faq-gold), var(--faq-coral));
  transition:transform .36s cubic-bezier(.22,1,.36,1);
}

.pp-faq-editorial--sublimation .pp-faq-item.is-active::before {
transform:scaleY(1);
}

.pp-faq-editorial--sublimation .pp-faq-item__trigger {
width:100%;
  padding:32px 34px;
  color:var(--faq-ink);
  background:transparent;
}

.pp-faq-editorial--sublimation .pp-faq-item__trigger:hover {
background:rgba(165,134,103,.045);
}

.pp-faq-editorial--sublimation .pp-faq-item__question {
color:var(--faq-ink);
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(22px, 1.8vw, 31px);
  line-height:1.16;
  letter-spacing:-.035em;
  text-align:left;
}

.pp-faq-editorial--sublimation .pp-faq-item__icon {
width:46px;
  height:46px;
  min-width:46px;
  border:1px solid rgba(165,134,103,.34);
  background:rgba(255,255,255,.56);
  color:var(--faq-gold);
  display:flex;
  align-items:center;
  justify-content:center;
  transition:
    background .3s ease,
    border-color .3s ease,
    color .3s ease,
    transform .36s cubic-bezier(.22,1,.36,1);
}

.pp-faq-editorial--sublimation .pp-faq-item__icon svg {
width:22px;
  height:22px;
  fill:none;
}

.pp-faq-editorial--sublimation .pp-faq-item__icon path {
stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.pp-faq-editorial--sublimation .pp-faq-item.is-active .pp-faq-item__icon {
background:var(--faq-gold);
  border-color:var(--faq-gold);
  color:#fff;
  transform:rotate(180deg);
}

.pp-faq-editorial--sublimation .pp-faq-item__answer {
background:
    linear-gradient(90deg, rgba(165,134,103,.055), transparent 54%);
}

.pp-faq-editorial--sublimation .pp-faq-item__answer-inner {
padding:0 34px 34px;
  max-width:900px;
  color:var(--faq-muted);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(17px, 1.05vw, 20px);
  line-height:1.65;
  letter-spacing:-.016em;
}

/* MOBILE */

@media (max-width:767px) {
  .pp-faq-editorial--sublimation .pp-faq-editorial__head {
margin-bottom:44px;
  }

  .pp-faq-editorial--sublimation .pp-faq-editorial__title {
font-size:clamp(44px, 12vw, 68px);
    line-height:.98;
  }

  .pp-faq-editorial--sublimation .pp-faq-editorial__intro {
font-size:16px;
    line-height:1.58;
  }

  .pp-faq-editorial--sublimation .pp-faq-item__trigger {
padding:24px 20px;
    gap:18px;
  }

  .pp-faq-editorial--sublimation .pp-faq-item__question {
font-size:22px;
  }

  .pp-faq-editorial--sublimation .pp-faq-item__icon {
width:40px;
    height:40px;
    min-width:40px;
  }

  .pp-faq-editorial--sublimation .pp-faq-item__answer-inner {
padding:0 20px 26px;
    font-size:15.5px;
  }
}

/* ========================================================= SUBLIMAÇÃO — FINAL CTA / IRIDESCENT SIMPLE Mantém botão original, muda apenas carácter visual nesta página ========================================================= */

/* ========================================================= SUBLIMATION FAQ ========================================================= */

/* DESIGN PAGE — MARQUEE LIGHT BACKGROUND */

/* ========================================================= LASER CUT — TECHNICAL MATERIALS INTRO / RED FLUORESCENT ========================================================= */

/* ========================================================= LASER LAB — PERFORMANCE PATCH cola no fim do styles.css ========================================================= */

/* Em mobile, ainda mais leve */

/* ========================================================= LASER CUT — APPLICATIONS / CINEMATIC SLIDER ========================================================= */

.pp-laser-apps .container {
position:relative;
  z-index:3;
  max-width:1460px;
}

/* laser details — leves */

/* ========================================================= LASER CUT — TECHNOLOGIES / CONTROLLED MACHINE SLIDER ========================================================= */

.pp-laser-tech .container {
position:relative;
  z-index:3;
  max-width:1460px;
}

/* ========================= LASER DETAILS ========================= */

/* ========================= NAV BUTTONS ========================= */

@media (max-width:420px) {
  .pp-laser-tech .container {
padding-left:14px;
    padding-right:14px;
  }
}

/* ========================================================= LASER CUT — FAQ FINAL CLEAN / FAST Sem max-height animado, sem JS pesado, sem botões esticados ========================================================= */

/* MOBILE */

/* ========================================================= LASER CUT — FINAL CTA / LIGHT EDITORIAL ========================================================= */

/* mantém lógica do botão antigo, mas corrige alinhamento e integra com esta CTA */

/* ligação visual com footer */

/* ========================================================= DESIGN — CONCEPT TO PRODUCT INTRO ========================================================= */

.pp-design-studio .container {
position:relative;
  z-index:3;
}

/* ========================================================= DESIGN — MINI BEFORE/AFTER SLIDER FIXO + DRAG Mais pequeno e posicionado abaixo do "VISUAL DIRECTION" ========================================================= */

/* ========================================================= DESIGN HIGHLIGHTS — PREMIUM DARK EDITORIAL ========================================================= */

/* ========================================================= DESIGN HIGHLIGHTS — FIX REAL 01/02/03 ALIGNMENT Usa as classes reais: .pp-design-highlights__* ========================================================= */

/* ========================= MOBILE ========================= */

/* ========================================================= DESIGN — LANGUAGE MARQUEE PREMIUM ========================================================= */

/* MARQUEE */

/* ========================================================= DESIGN — FINAL CTA / PREMIUM DARK ========================================================= */

/* ======================================================================================================= QUALITY LAB CAT PAGE ========================================================================================================= */

/* ========================================================= QUALITY LAB — O QUE TESTAMOS + PROCESSO PP TÊXTEIS / CLEAN EDITORIAL ========================================================= */

/* ========================================================= QUALITY TESTS — INTRO ========================================================= */

/* ========================================================= QUALITY TESTS — GRID ========================================================= */

/* ========================================================= QUALITY PROCESS ========================================================= */

/* PROCESS RAIL */

/* ========================================================= QUALITY LAB — PROCESSO DE QUALIDADE / CLEAN PREMIUM V2 ========================================================= */

/* MOBILE */

/* MOBILE PEQUENO */

/* ========================================================= QUALITY LAB — BASE DE CONTROLO / PP DESIGN FIXED ========================================================= */

.pp-quality-control {
--qc-black:#050505;
  --qc-white:#ffffff;
  --qc-accent:var(--primary, #A58667);
  --qc-muted:rgba(255,255,255,.66);
  --qc-soft:rgba(255,255,255,.46);

  position:relative;
  width:100%;
  overflow:hidden;
  isolation:isolate;

  padding:clamp(86px, 7vw, 124px) 0;
  min-height:clamp(620px, 48vw, 760px);

  background:#050505;
  color:#ffffff;
}

.pp-quality-control *,
.pp-quality-control *::before,
.pp-quality-control *::after {
box-sizing:border-box;
}

.pp-quality-control__media {
position:absolute;
  inset:0;
  z-index:1;
  overflow:hidden;
}

.pp-quality-control__media img {
width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center right;
  filter:saturate(.72) contrast(1.05) brightness(.42);
  transform:scale(1.02);
}

.pp-quality-control__media::before {
content:"";
  position:absolute;
  inset:0;
  z-index:2;

  background:
    linear-gradient(
      90deg,
      rgba(5,5,5,.97) 0%,
      rgba(5,5,5,.94) 34%,
      rgba(5,5,5,.82) 64%,
      rgba(5,5,5,.72) 100%
    ),
    linear-gradient(
      180deg,
      rgba(5,5,5,.34) 0%,
      rgba(5,5,5,.20) 44%,
      rgba(5,5,5,.86) 100%
    );
}

.pp-quality-control::before {
content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;

  background:
    linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.018) 1px, transparent 1px);

  background-size:88px 88px, 88px 88px;
  opacity:.28;
}

.pp-quality-control .container {
position:relative;
  z-index:4;

  width:min(1480px, calc(100% - 72px));
  max-width:none;
  margin:0 auto;
  padding-left:0;
  padding-right:0;
}

.pp-quality-control__layout {
width:100%;
}

.pp-quality-control__content {
width:100%;

  display:grid;
  grid-template-columns:minmax(0, .95fr) minmax(360px, .72fr);
  grid-template-areas:
    "eyebrow list"
    "title   list"
    "lead    list";

  column-gap:clamp(70px, 9vw, 150px);
  row-gap:0;
  align-items:center;
}

.pp-quality-control__eyebrow {
grid-area:eyebrow;

  display:flex;
  align-items:center;
  gap:18px;

  margin:0 0 clamp(36px, 4vw, 70px);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(12px, .78vw, 14px);
  line-height:1;
  font-weight:500;
  letter-spacing:.34em;
  text-transform:uppercase;

  color:var(--qc-accent);
}

.pp-quality-control__eyebrow::after {
content:"";
  width:clamp(50px, 4vw, 82px);
  height:1px;
  background:var(--qc-accent);
}

.pp-quality-control__content h2 {
grid-area:title;

  max-width:760px;
  margin:0;

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(58px, 6.4vw, 108px);
  line-height:.88;
  font-weight:500;
  letter-spacing:-.082em;
  text-transform:none;

  color:#ffffff;
}

.pp-quality-control__lead {
grid-area:lead;

  max-width:560px;
  margin:clamp(26px, 2.6vw, 42px) 0 0;

  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(18px, 1.22vw, 22px);
  line-height:1.58;
  font-weight:400;
  letter-spacing:-.03em;

  color:rgba(255,255,255,.72);
}

.pp-quality-control__list {
grid-area:list;

  width:100%;
  max-width:500px;
  justify-self:end;

  display:grid;
  gap:clamp(30px, 3.2vw, 46px);
}

.pp-quality-control__item {
display:grid;
  grid-template-columns:58px minmax(0, 1fr);
  gap:20px;
  align-items:start;
}

.pp-quality-control__icon {
width:58px;
  height:58px;

  display:flex;
  align-items:center;
  justify-content:center;

  border:1px solid rgba(165,134,103,.52);
  border-radius:999px;
  background:rgba(255,255,255,.018);
  color:var(--qc-accent);

  transition:
    transform .35s cubic-bezier(.22,1,.36,1),
    background .35s cubic-bezier(.22,1,.36,1),
    color .35s cubic-bezier(.22,1,.36,1),
    border-color .35s cubic-bezier(.22,1,.36,1);
}

.pp-quality-control__icon svg {
width:22px;
  height:22px;
  display:block;
}

.pp-quality-control__icon svg path,
.pp-quality-control__icon svg circle {
fill:none;
  stroke:currentColor;
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.pp-quality-control__item h3 {
margin:0 0 8px;

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(22px, 1.75vw, 34px);
  line-height:1;
  font-weight:500;
  letter-spacing:.035em;
  text-transform:uppercase;

  color:#ffffff;
}

.pp-quality-control__item p {
max-width:410px;
  margin:0;

  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(15px, 1vw, 18px);
  line-height:1.48;
  font-weight:400;
  letter-spacing:-.025em;

  color:var(--qc-muted);
}

@media (hover:hover) {
  .pp-quality-control__item:hover .pp-quality-control__icon {
background:#ffffff;
    border-color:#ffffff;
    color:#050505;
    transform:scale(1.04);
  }
}

@media (max-width:1399px) {
  .pp-quality-control {
min-height:650px;
  }

  .pp-quality-control .container {
width:min(1320px, calc(100% - 56px));
  }

  .pp-quality-control__content {
grid-template-columns:minmax(0, .95fr) minmax(340px, .72fr);
    column-gap:clamp(54px, 6vw, 96px);
  }

  .pp-quality-control__content h2 {
font-size:clamp(56px, 6vw, 92px);
    max-width:680px;
  }

  .pp-quality-control__lead {
max-width:520px;
    font-size:clamp(17px, 1.15vw, 20px);
  }

  .pp-quality-control__list {
max-width:470px;
    gap:34px;
  }

  .pp-quality-control__item h3 {
font-size:clamp(21px, 1.65vw, 30px);
  }

  .pp-quality-control__item p {
font-size:clamp(15px, 1vw, 17px);
  }
}

@media (max-width:1199px) {
  .pp-quality-control {
min-height:auto;
    padding:clamp(82px, 9vw, 112px) 0;
  }

  .pp-quality-control .container {
width:calc(100% - 48px);
  }

  .pp-quality-control__content {
grid-template-columns:1fr;
    grid-template-areas:
      "eyebrow"
      "title"
      "lead"
      "list";

    row-gap:0;
  }

  .pp-quality-control__eyebrow {
margin-bottom:32px;
  }

  .pp-quality-control__content h2 {
max-width:720px;
    font-size:clamp(54px, 8vw, 82px);
  }

  .pp-quality-control__lead {
max-width:620px;
    margin-top:26px;
    font-size:clamp(18px, 2vw, 21px);
  }

  .pp-quality-control__list {
max-width:620px;
    justify-self:start;
    margin-top:52px;
    gap:30px;
  }

  .pp-quality-control__item {
grid-template-columns:56px minmax(0, 1fr);
    gap:18px;
  }

  .pp-quality-control__item h3 {
font-size:clamp(23px, 3.4vw, 32px);
  }

  .pp-quality-control__item p {
max-width:540px;
    font-size:clamp(16px, 1.9vw, 18px);
  }

  .pp-quality-control__media::before {
background:
      linear-gradient(
        90deg,
        rgba(5,5,5,.97) 0%,
        rgba(5,5,5,.92) 58%,
        rgba(5,5,5,.78) 100%
      ),
      linear-gradient(
        180deg,
        rgba(5,5,5,.42) 0%,
        rgba(5,5,5,.32) 46%,
        rgba(5,5,5,.90) 100%
      );
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-quality-control {
padding:74px 0 78px;
  }

  .pp-quality-control .container {
width:calc(100% - 30px);
  }

  .pp-quality-control::before {
background-size:68px 68px, 68px 68px;
    opacity:.22;
  }

  .pp-quality-control__media img {
object-position:center right;
    filter:saturate(.72) contrast(1.05) brightness(.38);
  }

  .pp-quality-control__eyebrow {
gap:14px;
    margin-bottom:24px;

    font-size:11px;
    letter-spacing:.24em;
  }

  .pp-quality-control__eyebrow::after {
width:42px;
  }

  .pp-quality-control__content h2 {
max-width:390px;

    font-size:clamp(42px, 11vw, 58px);
    line-height:.9;
    letter-spacing:-.075em;
  }

  .pp-quality-control__lead {
max-width:100%;
    margin-top:20px;

    font-size:16px;
    line-height:1.58;
  }

  .pp-quality-control__list {
margin-top:40px;
    gap:24px;
  }

  .pp-quality-control__item {
grid-template-columns:44px minmax(0, 1fr);
    gap:14px;
  }

  .pp-quality-control__icon {
width:42px;
    height:42px;
  }

  .pp-quality-control__icon svg {
width:18px;
    height:18px;
  }

  .pp-quality-control__item h3 {
margin-bottom:7px;

    font-size:clamp(18px, 5vw, 24px);
    line-height:1.04;
    letter-spacing:.035em;
  }

  .pp-quality-control__item p {
max-width:34ch;

    font-size:15px;
    line-height:1.48;
  }
}

/* ========================================================= SMALL MOBILE ========================================================= */

@media (max-width:420px) {
  .pp-quality-control .container {
width:calc(100% - 24px);
  }

  .pp-quality-control__content h2 {
font-size:40px;
  }

  .pp-quality-control__list {
margin-top:34px;
  }

  .pp-quality-control__item {
grid-template-columns:1fr;
    gap:12px;
  }

  .pp-quality-control__icon {
width:42px;
    height:42px;
  }
}

/* ========================================================= QUALITY LAB — FINAL CTA / FULL IMAGE + SUBLIMAÇÃO BUTTON Substitui todo o CSS antigo .pp-quality-final-cta ========================================================= */

.pp-quality-final-cta {
position:relative;
  isolation:isolate;
  overflow:hidden;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  min-height:clamp(620px, 44vw, 720px);
  display:flex;
  align-items:center;
  background:#050505;
  color:#fff;
}

.pp-quality-final-cta__media,
.pp-quality-final-cta__overlay {
position:absolute;
  inset:0;
}

.pp-quality-final-cta__media {
z-index:-3;
}

.pp-quality-final-cta__media img {
width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.92) contrast(1.08) brightness(.82);
  transform:scale(1.02);
}

.pp-quality-final-cta__overlay {
z-index:-2;
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,.88) 0%,
      rgba(0,0,0,.70) 34%,
      rgba(0,0,0,.36) 66%,
      rgba(0,0,0,.14) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,.24) 0%,
      rgba(0,0,0,.08) 42%,
      rgba(0,0,0,.66) 100%
    );
}

.pp-quality-final-cta::before {
content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 42%, rgba(165,134,103,.18), transparent 34%),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.032) 1px, transparent 1px);
  background-size:auto, 92px 92px, 92px 92px;
  opacity:.26;
  mask-image:linear-gradient(90deg, #000 0%, #000 44%, transparent 84%);
}

.pp-quality-final-cta .container {
position:relative;
  z-index:2;
  width:min(1540px, calc(100% - 64px));
  max-width:none;
  padding-left:0;
  padding-right:0;
}

.pp-quality-final-cta__content {
max-width:850px;
  padding:clamp(82px, 7vw, 118px) 0;
}

.pp-quality-final-cta__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;
  margin-bottom:26px;
  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:12px;
  line-height:1;
  letter-spacing:.24em;
  text-transform:uppercase;
}

.pp-quality-final-cta__eyebrow::after {
content:"";
  width:46px;
  height:1px;
  background:#A58667;
}

.pp-quality-final-cta h2 {
max-width:880px;
  margin:0;
  color:#fff;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(64px, 7vw, 124px);
  line-height:.84;
  letter-spacing:-.092em;
  font-weight:500;
}

.pp-quality-final-cta p {
max-width:680px;
  margin:30px 0 0;
  color:rgba(255,255,255,.80);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(18px, 1.22vw, 23px);
  line-height:1.48;
  letter-spacing:-.028em;
}

/* ========================================================= BOTÃO CTA — IGUAL AO DA SUBLIMAÇÃO ========================================================= */

.pp-quality-final-cta__btn {
position:relative;
  isolation:isolate;
  overflow:hidden;

  width:max-content;
  min-height:62px;
  margin-top:42px;
  padding:0 18px 0 30px;

  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:22px;

  border:1px solid rgba(255,255,255,.32);
  border-radius:999px;
  background:rgba(255,255,255,.055);
  color:#fff !important;

  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 16px 46px rgba(0,0,0,.24);

  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:12px;
  line-height:1;
  letter-spacing:.14em;
  text-transform:uppercase;

  transition:
    color .38s cubic-bezier(.22,1,.36,1),
    border-color .38s cubic-bezier(.22,1,.36,1),
    background .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1),
    box-shadow .38s cubic-bezier(.22,1,.36,1);
}

.pp-quality-final-cta__btn::before {
content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  border-radius:inherit;
  background:#fff;
  transform:translateY(105%);
  transition:transform .46s cubic-bezier(.22,1,.36,1);
}

.pp-quality-final-cta__btn::after {
display:none;
}

.pp-quality-final-cta__btn:hover {
color:#050505 !important;
  border-color:#fff;
  transform:translateY(-2px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 22px 60px rgba(0,0,0,.32);
}

.pp-quality-final-cta__btn:hover::before {
transform:translateY(0);
}

.pp-quality-final-cta__btn i {
position:relative;
  flex:0 0 auto;

  width:42px;
  height:42px;
  border-radius:999px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:#A58667;
  color:#fff;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 10px 26px rgba(165,134,103,.24);

  transition:
    background .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1),
    color .38s cubic-bezier(.22,1,.36,1);
}

.pp-quality-final-cta__btn i::before {
content:"";
  position:absolute;
  left:50%;
  top:50%;

  width:15px;
  height:1px;

  background:currentColor;
  transform:translate(-52%, -50%);
}

.pp-quality-final-cta__btn i::after {
content:"";
  position:absolute;
  left:50%;
  top:50%;

  width:7px;
  height:7px;

  border-top:1px solid currentColor;
  border-right:1px solid currentColor;

  transform:translate(-6%, -50%) rotate(45deg);
}

.pp-quality-final-cta__btn:hover i {
background:#050505;
  color:#fff;
  transform:translateX(4px);
}

@media (min-width:1600px) {
  .pp-quality-final-cta {
min-height:760px;
  }

  .pp-quality-final-cta h2 {
font-size:clamp(92px, 6.7vw, 140px);
  }
}

@media (max-width:1366px) {
  .pp-quality-final-cta {
min-height:620px;
  }

  .pp-quality-final-cta .container {
width:min(1360px, calc(100% - 54px));
  }

  .pp-quality-final-cta h2 {
font-size:clamp(60px, 6.6vw, 104px);
  }

  .pp-quality-final-cta p {
font-size:clamp(17px, 1.18vw, 21px);
  }
}

@media (max-width:991px) {
  .pp-quality-final-cta {
min-height:640px;
  }

  .pp-quality-final-cta .container {
width:calc(100% - 28px);
  }

  .pp-quality-final-cta__overlay {
background:
      linear-gradient(
        90deg,
        rgba(0,0,0,.88) 0%,
        rgba(0,0,0,.68) 58%,
        rgba(0,0,0,.34) 100%
      ),
      linear-gradient(
        180deg,
        rgba(0,0,0,.40) 0%,
        rgba(0,0,0,.08) 38%,
        rgba(0,0,0,.80) 100%
      );
  }

  .pp-quality-final-cta h2 {
font-size:clamp(54px, 13vw, 88px);
    line-height:.88;
    letter-spacing:-.078em;
  }

  .pp-quality-final-cta p {
margin-top:26px;
    font-size:18px;
    line-height:1.5;
  }
}

@media (max-width:575px) {
  .pp-quality-final-cta {
min-height:600px;
  }

  .pp-quality-final-cta .container {
width:calc(100% - 22px);
  }

  .pp-quality-final-cta__content {
padding:72px 0;
  }

  .pp-quality-final-cta__media img {
object-position:62% center;
    filter:saturate(.9) contrast(1.08) brightness(.62);
  }

  .pp-quality-final-cta__eyebrow {
font-size:11px;
    letter-spacing:.18em;
    margin-bottom:22px;
  }

  .pp-quality-final-cta__eyebrow::after {
width:34px;
  }

  .pp-quality-final-cta h2 {
font-size:48px;
  }

  .pp-quality-final-cta p {
font-size:16px;
  }

  .pp-quality-final-cta__btn {
width:100%;
    min-height:58px;
    margin-top:34px;
    padding:0 12px 0 22px;
    justify-content:space-between;
    gap:16px;
    font-size:11px;
    letter-spacing:.12em;
  }

  .pp-quality-final-cta__btn i {
width:40px;
    height:40px;
  }
}

@media (max-width:390px) {
  .pp-quality-final-cta h2 {
font-size:42px;
  }

  .pp-quality-final-cta p {
font-size:15px;
  }
}

/* ========================================================= SUBLIMAÇÃO — BENEFÍCIOS / RESPONSIVE EDITORIAL CARDS Substitui todo o CSS antigo .pp-sub-benefits-clean ========================================================= */

/* ========================================================= TABLET / MOBILE HORIZONTAL ========================================================= */

/* ========================================================= MOBILE ========================================================= */

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

/* ========================================================= SUBLIMAÇÃO — PROCESSO CLEAN / FULL BLEED RESPONSIVE ========================================================= */

/* ========================================================= MOBILE ========================================================= */

/* ========================================================= MOBILE PEQUENO ========================================================= */

/* ========================================================= SUBLIMAÇÃO — BASE TÉCNICA DESKTOP + TABLET + MOBILE FOTO CLARA E FOTO EM SEGUNDO NO MOBILE ========================================================= */

.pp-sub-dark-split {
--ds-bg:#050505;
  --ds-white:#ffffff;
  --ds-accent:#A58667;
  --ds-pad:clamp(42px, 4.8vw, 86px);

  position:relative;
  isolation:isolate;
  overflow:hidden;

  width:100vw;
  max-width:100vw;

  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);

  display:grid;
  grid-template-columns:
    minmax(0, 1fr)
    minmax(0, 1fr);

  background:var(--ds-bg);
  color:var(--ds-white);
}

.pp-sub-dark-split *,
.pp-sub-dark-split *::before,
.pp-sub-dark-split *::after {
box-sizing:border-box;
}

.pp-sub-dark-split__left,
.pp-sub-dark-split__right {
position:relative;
  min-width:0;
  overflow:hidden;

  min-height:clamp(620px, 46vw, 780px);
}

.pp-sub-dark-split__left {
display:block;
  background:#161616;
}

.pp-sub-dark-split__right {
display:flex;
  align-items:center;
  background:#050505;
}

.pp-sub-dark-split__left-media {
position:absolute;
  inset:0;
  z-index:1;

  width:100%;
  height:100%;

  overflow:hidden;
}

.pp-sub-dark-split__left-media img {
display:block;

  width:100%;
  height:100%;

  object-fit:cover;
  object-position:center;

  /*
    Sem brilho reduzido, sem saturação artificial
    e sem filtro escuro.
  */
  filter:none !important;
  opacity:1 !important;

  transform:scale(1.005);
}

.pp-sub-dark-split__left::before,
.pp-sub-dark-split__left::after {
content:none !important;
  display:none !important;
  background:none !important;
  opacity:0 !important;
}

.pp-sub-dark-split__right::before {
content:"";

  position:absolute;
  inset:0;
  z-index:0;

  pointer-events:none;

  background:
    radial-gradient(
      circle at 24% 22%,
      rgba(165,134,103,.09),
      transparent 34%
    ),
    linear-gradient(
      180deg,
      rgba(255,255,255,.012),
      transparent 38%
    );
}

.pp-sub-dark-split__right::after {
content:"";

  position:absolute;
  inset:0;
  z-index:0;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(255,255,255,.018) 1px,
      transparent 1px
    ),
    linear-gradient(
      180deg,
      rgba(255,255,255,.014) 1px,
      transparent 1px
    );

  background-size:86px 86px;
  opacity:.28;
}

.pp-sub-dark-split__right-content {
position:relative;
  z-index:2;

  width:100%;
  max-width:940px;
  min-width:0;

  padding:var(--ds-pad);
}

.pp-sub-dark-split__eyebrow {
display:inline-flex;
  align-items:center;
  gap:16px;

  width:max-content;
  max-width:100%;

  margin:0 0 clamp(22px, 2vw, 30px);

  color:rgba(255,255,255,.78);

  font-family:
    "URWGeometricSemiBold",
    "Figtree",
    Arial,
    sans-serif;

  font-size:12px;
  line-height:1.1;
  font-weight:500;
  letter-spacing:.26em;
  text-transform:uppercase;
}

.pp-sub-dark-split__eyebrow::after {
content:"";

  display:block;
  flex:0 0 auto;

  width:44px;
  height:1px;

  background:var(--ds-accent);
}

.pp-sub-dark-split__right h2 {
width:100%;
  max-width:850px;
  min-width:0;

  margin:0;

  color:#ffffff;

  font-family:
    "URWGeometricSemiBold",
    "Figtree",
    Arial,
    sans-serif;

  font-size:clamp(56px, 5.2vw, 104px);
  line-height:.87;
  font-weight:500;
  letter-spacing:-.09em;

  overflow-wrap:normal;
  word-break:normal;
  text-wrap:balance;
}

.pp-sub-dark-split__right h2::after {
content:".";

  margin-left:.06em;
  color:var(--ds-accent);
}

.pp-sub-dark-split__items {
display:grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap:clamp(32px, 3.5vw, 64px);

  width:100%;
  min-width:0;

  margin-top:clamp(56px, 5vw, 84px);
}

.pp-sub-dark-split__items article {
display:block;

  width:100%;
  min-width:0;
  min-height:180px;

  margin:0;
  padding:0;

  border:0;
}

.pp-sub-dark-split__items article > div {
display:flex;
  align-items:center;
  justify-content:flex-start;

  width:clamp(54px, 4vw, 72px);
  height:clamp(54px, 4vw, 72px);

  margin:0 0 clamp(25px, 2.4vw, 36px);

  color:var(--ds-accent);
}

.pp-sub-dark-split__items svg {
display:block;

  width:100%;
  height:100%;

  fill:none;
  stroke:currentColor;
  stroke-width:1.45;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.pp-sub-dark-split__items h3 {
width:100%;
  max-width:240px;
  min-width:0;

  margin:0;

  color:var(--ds-accent);

  font-family:
    "URWGeometricSemiBold",
    "Figtree",
    Arial,
    sans-serif;

  font-size:clamp(14px, 1vw, 18px);
  line-height:1.15;
  font-weight:500;
  letter-spacing:.15em;
  text-transform:uppercase;

  overflow-wrap:break-word;
}

.pp-sub-dark-split__items p {
max-width:340px;

  margin:14px 0 0;

  color:rgba(255,255,255,.78);

  font-family:
    "URWGeometricMedium",
    "Figtree",
    Arial,
    sans-serif;

  font-size:clamp(16px, 1vw, 19px);
  line-height:1.55;
  letter-spacing:-.018em;
}

@media (min-width:1800px) {
  .pp-sub-dark-split__left,
  .pp-sub-dark-split__right {
min-height:820px;
  }

  .pp-sub-dark-split__right-content {
max-width:1000px;
    padding:96px;
  }

  .pp-sub-dark-split__right h2 {
font-size:112px;
  }

  .pp-sub-dark-split__items {
gap:70px;
    margin-top:90px;
  }

  .pp-sub-dark-split__items h3 {
font-size:19px;
  }
}

@media (max-width:1500px) {
  .pp-sub-dark-split {
--ds-pad:clamp(42px, 4.5vw, 70px);
  }

  .pp-sub-dark-split__right h2 {
font-size:clamp(54px, 5vw, 90px);
  }

  .pp-sub-dark-split__items {
gap:clamp(28px, 3vw, 48px);
  }
}

@media (max-width:1366px) {
  .pp-sub-dark-split {
--ds-pad:clamp(38px, 4vw, 62px);
  }

  .pp-sub-dark-split__left,
  .pp-sub-dark-split__right {
min-height:620px;
  }

  .pp-sub-dark-split__right h2 {
font-size:clamp(52px, 5vw, 82px);
  }

  .pp-sub-dark-split__items {
gap:28px;
    margin-top:52px;
  }

  .pp-sub-dark-split__items article {
min-height:160px;
  }

  .pp-sub-dark-split__items h3 {
font-size:14px;
  }
}

@media (max-width:1199px) {
  .pp-sub-dark-split {
grid-template-columns:1fr;
  }

  .pp-sub-dark-split__left {
min-height:clamp(500px, 60vw, 650px);
  }

  .pp-sub-dark-split__right {
min-height:auto;
  }

  .pp-sub-dark-split__right-content {
max-width:none;

    padding:
      76px
      clamp(34px, 5vw, 64px);
  }

  .pp-sub-dark-split__right h2 {
max-width:780px;

    font-size:clamp(56px, 8vw, 86px);
  }

  .pp-sub-dark-split__items {
grid-template-columns:
      repeat(3, minmax(0, 1fr));

    gap:32px;
  }
}

/* ========================================================= TABLET VERTICAL E MOBILE CONTEÚDO PRIMEIRO / FOTO EM SEGUNDO ========================================================= */

@media (max-width:991px) {
  .pp-sub-dark-split {
display:grid;
    grid-template-columns:minmax(0, 1fr);
  }

  .pp-sub-dark-split__right {
order:1;
  }

  .pp-sub-dark-split__left {
order:2;
  }

  .pp-sub-dark-split__right-content {
padding:
      68px
      clamp(28px, 5vw, 48px)
      74px;
  }

  .pp-sub-dark-split__right h2 {
max-width:720px;

    font-size:clamp(52px, 9vw, 76px);
  }

  .pp-sub-dark-split__items {
grid-template-columns:
      repeat(3, minmax(0, 1fr));

    gap:26px;

    margin-top:50px;
  }

  .pp-sub-dark-split__left {
min-height:clamp(400px, 72vw, 580px);
  }

  .pp-sub-dark-split__left-media img {
object-position:center;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-sub-dark-split__right-content {
padding:
      62px
      24px
      66px;
  }

  .pp-sub-dark-split__eyebrow {
gap:13px;

    margin-bottom:22px;

    font-size:10.5px;
    letter-spacing:.21em;
  }

  .pp-sub-dark-split__eyebrow::after {
width:34px;
  }

  .pp-sub-dark-split__right h2 {
max-width:100%;

    font-size:clamp(46px, 12.5vw, 64px);
    line-height:.9;
    letter-spacing:-.075em;
  }

  .pp-sub-dark-split__items {
grid-template-columns:minmax(0, 1fr);

    gap:0;

    margin-top:44px;
  }

  .pp-sub-dark-split__items article {
display:grid;

    grid-template-columns:
      58px
      minmax(0, 1fr);

    align-items:center;
    column-gap:18px;

    min-height:0;

    padding:22px 0;

    border-top:1px solid rgba(255,255,255,.12);
  }

  .pp-sub-dark-split__items article:last-child {
border-bottom:1px solid rgba(255,255,255,.12);
  }

  .pp-sub-dark-split__items article > div {
grid-column:1;
    grid-row:1;

    width:48px;
    height:48px;

    margin:0;
  }

  .pp-sub-dark-split__items h3 {
grid-column:2;
    grid-row:1;

    max-width:100%;

    font-size:14px;
    line-height:1.18;
    letter-spacing:.14em;
  }

  .pp-sub-dark-split__items p {
grid-column:2;

    max-width:100%;

    font-size:16px;
  }

  .pp-sub-dark-split__left {
min-height:clamp(340px, 86vw, 510px);
  }

  .pp-sub-dark-split__left-media img {
object-position:center;
    transform:none;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:480px) {
  .pp-sub-dark-split__right-content {
padding:
      56px
      20px
      60px;
  }

  .pp-sub-dark-split__right h2 {
font-size:clamp(42px, 12vw, 56px);
  }

  .pp-sub-dark-split__items {
margin-top:38px;
  }

  .pp-sub-dark-split__items article {
grid-template-columns:
      52px
      minmax(0, 1fr);

    column-gap:14px;

    padding:20px 0;
  }

  .pp-sub-dark-split__items article > div {
width:43px;
    height:43px;
  }

  .pp-sub-dark-split__items h3 {
font-size:13px;
  }

  .pp-sub-dark-split__left {
min-height:390px;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

@media (max-width:390px) {
  .pp-sub-dark-split__right-content {
padding:
      52px
      17px
      56px;
  }

  .pp-sub-dark-split__eyebrow {
font-size:9.5px;
    letter-spacing:.18em;
  }

  .pp-sub-dark-split__right h2 {
font-size:40px;
    line-height:.92;
  }

  .pp-sub-dark-split__items article {
grid-template-columns:
      47px
      minmax(0, 1fr);

    column-gap:12px;
  }

  .pp-sub-dark-split__items article > div {
width:39px;
    height:39px;
  }

  .pp-sub-dark-split__items h3 {
font-size:12px;
  }

  .pp-sub-dark-split__left {
min-height:350px;
  }
}

/* ========================================================= MOBILE HORIZONTAL ========================================================= */

@media (max-width:900px)
  and (orientation:landscape) {
  .pp-sub-dark-split__right-content {
padding:
      54px
      34px
      60px;
  }

  .pp-sub-dark-split__right h2 {
font-size:clamp(48px, 7vw, 62px);
  }

  .pp-sub-dark-split__items {
grid-template-columns:
      repeat(3, minmax(0, 1fr));

    gap:24px;
  }

  .pp-sub-dark-split__items article {
display:block;

    padding:0;

    border:0;
  }

  .pp-sub-dark-split__items article > div {
width:44px;
    height:44px;

    margin-bottom:20px;
  }

  .pp-sub-dark-split__items h3 {
font-size:12px;
  }

  .pp-sub-dark-split__left {
min-height:420px;
  }
}

/* ========================================================= SUBLIMAÇÃO — FINAL CTA / FULL IMAGE + PREMIUM CLEAN BUTTON Substitui todo o CSS antigo .pp-sub-final-cta ========================================================= */

/* ========================================================= BOTÃO CTA — PREMIUM CLEAN CORRIGIDO ========================================================= */

/* MOBILE */

/* ============================================================================================================= page design ================================================================================================================= */

/* ========================================================= SERVICES — SPLIT HERO RESPONSIVE DESKTOP / TABLET / MOBILE ========================================================= */

.pp-design-split-hero {
--pp-hero-black:#050505;
  --pp-hero-white:#ffffff;
  --pp-hero-accent:#A58667;
  --pp-hero-mobile-nav:112px;

  position:relative;
  isolation:isolate;

  display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  min-height:max(680px, 100svh);

  margin:0;

  overflow:clip;

  background:var(--pp-hero-black);
  color:var(--pp-hero-white);
}

@supports not (overflow:clip) {
  .pp-design-split-hero {
overflow:hidden;
  }
}

.pp-design-split-hero *,
.pp-design-split-hero *::before,
.pp-design-split-hero *::after {
box-sizing:border-box;
}

.pp-design-split-hero__grain {
position:absolute;
  inset:0;
  z-index:4;

  pointer-events:none;

  opacity:.26;

  background:
    linear-gradient(
      90deg,
      rgba(255,255,255,.025) 1px,
      transparent 1px
    ),
    linear-gradient(
      180deg,
      rgba(255,255,255,.018) 1px,
      transparent 1px
    ),
    radial-gradient(
      circle at 42% 38%,
      rgba(165,134,103,.13),
      transparent 35%
    );

  background-size:
    82px 82px,
    82px 82px,
    auto;

  -webkit-mask-image:
    linear-gradient(
      180deg,
      #000 0%,
      rgba(0,0,0,.8) 72%,
      transparent 100%
    );

  mask-image:
    linear-gradient(
      180deg,
      #000 0%,
      rgba(0,0,0,.8) 72%,
      transparent 100%
    );
}

.pp-design-split-hero__layout {
position:relative;
  z-index:2;

  display:grid;
  grid-template-columns:
    minmax(0, 1.04fr)
    minmax(0, .96fr);

  width:100%;
  min-width:0;

  min-height:max(680px, 100svh);
}

.pp-design-split-hero__content {
position:relative;
  z-index:3;

  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;

  width:100%;
  max-width:100%;
  min-width:0;

  padding:
    clamp(150px, 12vh, 210px)
    clamp(44px, 6vw, 112px)
    clamp(120px, 11vh, 165px);

  background:
    radial-gradient(
      circle at 16% 28%,
      rgba(165,134,103,.12),
      transparent 29%
    ),
    linear-gradient(
      90deg,
      #050505 0%,
      #050505 62%,
      rgba(5,5,5,.94) 100%
    );
}

.pp-design-split-hero__content::after {
content:"";

  position:absolute;
  top:0;
  right:-130px;
  bottom:0;
  z-index:-1;

  width:260px;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      #050505 0%,
      rgba(5,5,5,0) 100%
    );
}

.pp-design-split-hero__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;

  width:auto;
  max-width:100%;

  margin:0 0 clamp(26px, 2.4vw, 36px);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:13px;
  line-height:1;
  font-weight:500;
  letter-spacing:.28em;
  text-transform:uppercase;

  white-space:normal;

  color:var(--pp-hero-accent);
}

.pp-design-split-hero__eyebrow::before {
content:"";

  display:block;
  flex:0 0 auto;

  width:38px;
  height:1px;

  background:var(--pp-hero-accent);
}

.pp-design-split-hero h1 {
display:block;

  width:100%;
  max-width:790px;
  min-width:0;

  margin:0;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(78px, 8vw, 146px);
  line-height:.82;
  font-weight:500;
  letter-spacing:-.085em;

  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;

  color:var(--pp-hero-white);
}

.pp-design-split-hero h1::after {
content:".";

  color:var(--pp-hero-accent);
}

.pp-design-split-hero p {
display:block;

  width:100%;
  max-width:680px;
  min-width:0;

  margin:clamp(30px, 3vw, 42px) 0 0;

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(20px, 1.34vw, 27px);
  line-height:1.5;
  font-weight:400;
  letter-spacing:-.025em;

  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;

  color:rgba(255,255,255,.78);
}

/* ========================================================= BOTÃO OPCIONAL DO HERO ========================================================= */

.pp-design-split-hero__media {
position:relative;
  z-index:1;

  display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  min-height:max(680px, 100svh);

  overflow:hidden;

  background:
    radial-gradient(
      circle at 65% 36%,
      rgba(165,134,103,.1),
      transparent 36%
    ),
    #090909;
}

.pp-design-split-hero__media::before {
content:"";

  position:absolute;
  inset:0;
  z-index:2;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(5,5,5,.78) 0%,
      rgba(5,5,5,.22) 35%,
      rgba(5,5,5,.40) 100%
    ),
    linear-gradient(
      180deg,
      rgba(5,5,5,.46) 0%,
      rgba(5,5,5,.08) 42%,
      rgba(5,5,5,.80) 100%
    );
}

.pp-design-split-hero__media img {
position:absolute;
  inset:0;

  display:block;

  width:100%;
  height:100%;
  max-width:none;

  object-fit:cover;
  object-position:center;

  filter:
    saturate(.8)
    contrast(1.1)
    brightness(.64);

  transform:scale(1.025);
  transform-origin:center;

  transition:
    transform 1.2s cubic-bezier(.22,1,.36,1),
    filter .6s cubic-bezier(.22,1,.36,1);
}

.pp-design-split-hero__media img:not([src]),
.pp-design-split-hero__media img[src=""],
.pp-design-split-hero__media img[src="assets/images/images/"] {
display:none;
}

@media (hover:hover) and (pointer:fine) {
  .pp-design-split-hero:hover
  .pp-design-split-hero__media img {
transform:scale(1.05);

    filter:
      saturate(.88)
      contrast(1.08)
      brightness(.7);
  }
}

.pp-design-split-hero__scroll {
position:absolute;
  left:50%;
  bottom:clamp(30px, 5vh, 58px);
  z-index:8;

  display:flex;
  align-items:center;
  justify-content:center;

  width:62px;
  height:62px;

  margin:0;
  padding:0;

  overflow:hidden;

  border:1px solid rgba(255,255,255,.23);
  border-radius:50%;

  background:rgba(0,0,0,.4);
  color:var(--pp-hero-white);

  text-decoration:none;
  line-height:0;

  transform:translateX(-50%);

  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 14px 38px rgba(0,0,0,.28);

  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;

  transition:
    background-color .36s cubic-bezier(.22,1,.36,1),
    border-color .36s cubic-bezier(.22,1,.36,1),
    transform .36s cubic-bezier(.22,1,.36,1),
    box-shadow .36s cubic-bezier(.22,1,.36,1);
}

.pp-design-split-hero__scroll span {
position:relative;

  display:block;

  width:14px;
  height:14px;
  min-width:14px;
  min-height:14px;

  margin:-5px 0 0;
  padding:0;

  border:0;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  border-radius:1px;

  background:transparent !important;
  color:var(--pp-hero-white);

  transform:
    translateY(-2px)
    rotate(45deg);

  animation:
    ppDesignHeroScroll
    1.6s
    ease-in-out
    infinite;

  pointer-events:none;
}

.pp-design-split-hero__scroll span::before,
.pp-design-split-hero__scroll span::after {
content:none !important;
  display:none !important;
}

@keyframes ppDesignHeroScroll {
0%,
  100%{
    transform:
      translateY(-3px)
      rotate(45deg);

    opacity:.7;
  }

  50%{
    transform:
      translateY(4px)
      rotate(45deg);

    opacity:1;
  }
}

@media (hover:hover) and (pointer:fine) {
  .pp-design-split-hero__scroll:hover {
border-color:var(--pp-hero-accent);

    background:var(--pp-hero-accent);

    transform:
      translateX(-50%)
      translateY(-4px);

    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.18),
      0 20px 50px rgba(165,134,103,.3);
  }
}

.pp-design-split-hero__scroll:focus-visible {
outline:2px solid var(--pp-hero-white);
  outline-offset:4px;

  border-color:var(--pp-hero-accent);

  background:var(--pp-hero-accent);
}

.pp-design-split-hero__scroll:active {
transform:
    translateX(-50%)
    scale(.96);
}

@media (min-width:1800px) {
  .pp-design-split-hero,
  .pp-design-split-hero__layout,
  .pp-design-split-hero__media {
min-height:max(800px, 100svh);
  }

  .pp-design-split-hero__layout {
grid-template-columns:
      minmax(0, 1.08fr)
      minmax(0, .92fr);
  }

  .pp-design-split-hero__content {
padding-left:clamp(110px, 7vw, 150px);
    padding-right:clamp(90px, 6vw, 130px);
  }

  .pp-design-split-hero h1 {
max-width:900px;

    font-size:clamp(120px, 7.4vw, 158px);
  }

  .pp-design-split-hero p {
max-width:730px;

    font-size:28px;
  }

  .pp-design-split-hero__scroll {
width:68px;
    height:68px;
  }
}

@media (min-width:1200px) and (max-width:1599px) {
  .pp-design-split-hero,
  .pp-design-split-hero__layout,
  .pp-design-split-hero__media {
min-height:max(660px, 100svh);
  }

  .pp-design-split-hero__content {
padding:
      clamp(140px, 13vh, 190px)
      clamp(42px, 5vw, 84px)
      clamp(110px, 10vh, 150px);
  }

  .pp-design-split-hero h1 {
font-size:clamp(72px, 7.3vw, 116px);
  }

  .pp-design-split-hero p {
max-width:620px;

    font-size:clamp(19px, 1.4vw, 24px);
  }
}

@media (min-width:992px) and (max-width:1199px) {
  .pp-design-split-hero,
  .pp-design-split-hero__layout,
  .pp-design-split-hero__media {
min-height:max(650px, 100svh);
  }

  .pp-design-split-hero__layout {
grid-template-columns:
      minmax(0, 1.08fr)
      minmax(0, .92fr);
  }

  .pp-design-split-hero__content {
padding:
      150px
      42px
      120px;
  }

  .pp-design-split-hero h1 {
font-size:clamp(66px, 7.2vw, 92px);
  }

  .pp-design-split-hero p {
font-size:19px;
  }

  .pp-design-split-hero__scroll {
width:58px;
    height:58px;

    bottom:28px;
  }
}

/* ========================================================= TABLET E MOBILE A imagem passa a ocupar todo o fundo. ========================================================= */

@media (max-width:991px) {
  .pp-design-split-hero {
min-height:max(640px, 100svh);
  }

  .pp-design-split-hero__layout {
position:relative;

    display:block;

    min-height:max(640px, 100svh);
  }

  .pp-design-split-hero__content {
position:relative;
    z-index:3;

    justify-content:center;

    min-height:max(640px, 100svh);

    padding:
      calc(var(--pp-hero-mobile-nav) + 64px)
      34px
      125px;

    background:
      radial-gradient(
        circle at 18% 34%,
        rgba(165,134,103,.13),
        transparent 34%
      ),
      linear-gradient(
        90deg,
        rgba(5,5,5,.96) 0%,
        rgba(5,5,5,.87) 52%,
        rgba(5,5,5,.63) 100%
      ),
      linear-gradient(
        180deg,
        rgba(5,5,5,.3) 0%,
        rgba(5,5,5,.08) 45%,
        rgba(5,5,5,.78) 100%
      );
  }

  .pp-design-split-hero__content::after {
content:none;
    display:none;
  }

  .pp-design-split-hero__media {
position:absolute;
    inset:0;
    z-index:1;

    width:100%;
    height:100%;
    min-height:0;
  }

  .pp-design-split-hero__media::before {
background:
      linear-gradient(
        90deg,
        rgba(5,5,5,.82) 0%,
        rgba(5,5,5,.54) 58%,
        rgba(5,5,5,.38) 100%
      ),
      linear-gradient(
        180deg,
        rgba(5,5,5,.35) 0%,
        rgba(5,5,5,.08) 40%,
        rgba(5,5,5,.86) 100%
      );
  }

  .pp-design-split-hero__media img {
object-position:66% center;

    filter:
      saturate(.82)
      contrast(1.08)
      brightness(.58);

    transform:scale(1.02);
  }

  .pp-design-split-hero__grain {
z-index:4;

    opacity:.18;

    background-size:
      68px 68px,
      68px 68px,
      auto;
  }

  .pp-design-split-hero h1 {
max-width:760px;

    font-size:clamp(62px, 11vw, 92px);
    line-height:.88;
    letter-spacing:-.076em;
  }

  .pp-design-split-hero p {
max-width:650px;

    font-size:clamp(18px, 2.6vw, 22px);
    line-height:1.5;
  }

  .pp-design-split-hero__scroll {
width:54px;
    height:54px;

    bottom:
      max(
        24px,
        calc(env(safe-area-inset-bottom) + 16px)
      );
  }

  .pp-design-split-hero__scroll span {
width:13px;
    height:13px;
    min-width:13px;
    min-height:13px;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-design-split-hero,
  .pp-design-split-hero__layout,
  .pp-design-split-hero__content {
min-height:max(620px, 100svh);
  }

  .pp-design-split-hero__content {
padding:
      calc(var(--pp-hero-mobile-nav) + 58px)
      24px
      112px;
  }

  .pp-design-split-hero__eyebrow {
gap:14px;

    margin-bottom:25px;

    font-size:11px;
    line-height:1.2;
    letter-spacing:.2em;
  }

  .pp-design-split-hero__eyebrow::before {
width:32px;
  }

  .pp-design-split-hero h1 {
max-width:100%;

    font-size:clamp(52px, 14vw, 74px);
    line-height:.9;
    letter-spacing:-.07em;
  }

  .pp-design-split-hero p {
max-width:36rem;

    margin-top:26px;

    font-size:clamp(16.5px, 4.5vw, 19px);
    line-height:1.52;
    letter-spacing:-.02em;
  }

  .pp-design-split-hero__media img {
object-position:70% center;
  }

  .pp-design-split-hero__scroll {
width:50px;
    height:50px;

    bottom:
      max(
        20px,
        calc(env(safe-area-inset-bottom) + 14px)
      );
  }

  .pp-design-split-hero__scroll span {
width:12px;
    height:12px;
    min-width:12px;
    min-height:12px;

    margin-top:-4px;

    border-right-width:2px;
    border-bottom-width:2px;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:575px) {
  .pp-design-split-hero {
--pp-hero-mobile-nav:108px;
  }

  .pp-design-split-hero,
  .pp-design-split-hero__layout,
  .pp-design-split-hero__content {
min-height:max(610px, 100svh);
  }

  .pp-design-split-hero__content {
padding:
      calc(var(--pp-hero-mobile-nav) + 50px)
      20px
      104px;
  }

  .pp-design-split-hero__eyebrow {
gap:13px;

    margin-bottom:23px;

    font-size:10.5px;
    letter-spacing:.19em;
  }

  .pp-design-split-hero__eyebrow::before {
width:30px;
  }

  .pp-design-split-hero h1 {
font-size:clamp(48px, 14vw, 64px);
    line-height:.92;
    letter-spacing:-.068em;
  }

  .pp-design-split-hero p {
max-width:32rem;

    margin-top:24px;

    font-size:16.5px;
    line-height:1.5;
  }

  .pp-design-split-hero__media img {
object-position:72% center;
  }

  .pp-design-split-hero__scroll {
width:48px;
    height:48px;

    bottom:
      max(
        18px,
        calc(env(safe-area-inset-bottom) + 12px)
      );
  }

  .pp-design-split-hero__scroll span {
width:11px;
    height:11px;
    min-width:11px;
    min-height:11px;

    margin-top:-3px;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

@media (max-width:390px) {
  .pp-design-split-hero {
--pp-hero-mobile-nav:104px;
  }

  .pp-design-split-hero__content {
padding:
      calc(var(--pp-hero-mobile-nav) + 44px)
      18px
      96px;
  }

  .pp-design-split-hero__eyebrow {
gap:11px;

    font-size:10px;
    letter-spacing:.17em;
  }

  .pp-design-split-hero__eyebrow::before {
width:27px;
  }

  .pp-design-split-hero h1 {
font-size:clamp(43px, 13.4vw, 54px);
    line-height:.94;
  }

  .pp-design-split-hero p {
margin-top:22px;

    font-size:15.5px;
    line-height:1.5;
  }

  .pp-design-split-hero__scroll {
width:46px;
    height:46px;
  }
}

@media (max-width:340px) {
  .pp-design-split-hero__content {
padding-right:15px;
    padding-left:15px;
  }

  .pp-design-split-hero__eyebrow {
font-size:9.5px;
    letter-spacing:.15em;
  }

  .pp-design-split-hero h1 {
font-size:40px;
  }

  .pp-design-split-hero p {
font-size:15px;
  }

  .pp-design-split-hero__scroll {
width:44px;
    height:44px;
  }
}

/* ========================================================= MOBILE E TABLET HORIZONTAL ========================================================= */

@media (max-width:991px) and (orientation:landscape) {
  .pp-design-split-hero,
  .pp-design-split-hero__layout,
  .pp-design-split-hero__content {
min-height:max(500px, 100svh);
  }

  .pp-design-split-hero__content {
justify-content:center;

    max-width:680px;

    padding:
      130px
      38px
      82px;
  }

  .pp-design-split-hero h1 {
font-size:clamp(48px, 8vw, 70px);
  }

  .pp-design-split-hero p {
max-width:590px;

    margin-top:20px;

    font-size:16px;
    line-height:1.45;
  }

  .pp-design-split-hero__eyebrow {
margin-bottom:18px;
  }

  .pp-design-split-hero__scroll {
width:46px;
    height:46px;

    bottom:16px;
  }
}

@media (min-width:992px) and (max-height:720px) {
  .pp-design-split-hero,
  .pp-design-split-hero__layout,
  .pp-design-split-hero__media {
min-height:650px;
  }

  .pp-design-split-hero__content {
padding-top:135px;
    padding-bottom:105px;
  }

  .pp-design-split-hero h1 {
font-size:clamp(66px, 7vw, 96px);
  }

  .pp-design-split-hero p {
margin-top:26px;

    font-size:19px;
  }

  .pp-design-split-hero__scroll {
bottom:22px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-design-split-hero__media img,
  .pp-design-split-hero__scroll,
  .pp-design-split-hero__scroll span {
animation:none !important;
    transition:none !important;
  }
}

/* ========================================================= HERO SUSTENTABILIDADE — CORREÇÃO EXCLUSIVA DO TÍTULO ========================================================= */

.pp-design-split-hero h1.pp-sustainability-hero-title {
width:100%;
  max-width:100%;

  white-space:nowrap;
  word-break:normal;
  overflow-wrap:normal;

  font-size:clamp(56px, 5vw, 92px) !important;
  line-height:.9 !important;
  letter-spacing:-.065em !important;
}

@media (max-width:991px) {
  .pp-design-split-hero h1.pp-sustainability-hero-title {
font-size:clamp(42px, 6vw, 56px) !important;
    line-height:.94 !important;
    letter-spacing:-.055em !important;
  }
}

/* Mobile */

@media (max-width:767px) {
  .pp-design-split-hero h1.pp-sustainability-hero-title {
font-size:clamp(26px, 8vw, 50px) !important;
    line-height:.96 !important;
    letter-spacing:-.045em !important;

    white-space:nowrap !important;
  }
}

/* Mobile pequeno */

@media (max-width:575px) {
  .pp-design-split-hero h1.pp-sustainability-hero-title {
font-size:clamp(26px, 8vw, 42px) !important;
  }
}

@media (max-width:390px) {
  .pp-design-split-hero h1.pp-sustainability-hero-title {
font-size:clamp(25px, 7.7vw, 31px) !important;
    letter-spacing:-.04em !important;
  }
}

/* ========================================================= DESIGN — SPORT HERO 2 IMAGENS RESPONSIVO PARA TODOS OS ECRÃS IMAGENS COMPLETAS E EM 16:9 NO MOBILE/TABLET ========================================================= */

.pp-design-sport-hero {
--pp-design-bg:#f4f1eb;
  --pp-design-text:#101010;
  --pp-design-accent:#A58667;

  position:relative;
  isolation:isolate;

  display:flex;
  align-items:center;

  width:100%;
  max-width:100%;
  min-width:0;

  min-height:clamp(680px, 50vw, 900px);

  margin:0;
  padding:0;

  overflow:hidden;

  border:0;
  border-radius:0;

  background:var(--pp-design-bg);
  color:var(--pp-design-text);
}

.pp-design-sport-hero *,
.pp-design-sport-hero *::before,
.pp-design-sport-hero *::after {
box-sizing:border-box;
}

.pp-design-sport-hero__bg {
position:absolute;
  inset:0;
  z-index:-2;

  pointer-events:none;

  background:
    radial-gradient(
      circle at 18% 22%,
      rgba(165,134,103,.10),
      transparent 28%
    ),
    linear-gradient(
      90deg,
      rgba(0,0,0,.028) 1px,
      transparent 1px
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,.020) 1px,
      transparent 1px
    );

  background-size:
    auto,
    clamp(70px, 5vw, 96px) clamp(70px, 5vw, 96px),
    clamp(70px, 5vw, 96px) clamp(70px, 5vw, 96px);

  opacity:.38;
}

.pp-design-sport-hero__media {
position:absolute;
  inset:0;
  z-index:-4;

  display:block;

  width:100%;
  height:100%;
  min-width:0;

  margin:0;
  padding:0;

  overflow:hidden;

  border:0;
  border-radius:0;

  background:var(--pp-design-bg);
}

.pp-design-sport-hero__slide {
position:absolute;
  inset:0;

  display:block;

  width:100%;
  height:100%;

  margin:0;
  padding:0;

  overflow:hidden;

  border:0;
  border-radius:0;

  background:var(--pp-design-bg);

  opacity:0;
  visibility:hidden;
  pointer-events:none;

  animation:
    ppDesignSportHeroTwoSlides
    12s
    linear
    infinite
    both;

  will-change:opacity;
}

.pp-design-sport-hero__slide:nth-child(1) {
animation-delay:0s;
}

.pp-design-sport-hero__slide:nth-child(2) {
animation-delay:-6s;
}

.pp-design-sport-hero__slide:nth-child(n/**/+3) {
display:none;
}

.pp-design-sport-hero__slide img {
position:absolute;
  inset:0;

  display:block;

  width:100%;
  height:100%;
  max-width:none;

  margin:0;
  padding:0;

  /*
    CONTAIN mostra a imagem completa.
    Não corta cabeça, braços, pernas ou grafismos.
  */
  object-fit:contain;
  object-position:right center;

  border:0;
  border-radius:0;

  background:var(--pp-design-bg);

  filter:
    saturate(.96)
    contrast(1.03)
    brightness(.99);

  transform:none;

  user-select:none;
  -webkit-user-select:none;
  -webkit-user-drag:none;

  backface-visibility:hidden;
}

@keyframes ppDesignSportHeroTwoSlides {
0%{
    opacity:1;
    visibility:visible;
  }

  43%{
    opacity:1;
    visibility:visible;
  }

  50%{
    opacity:0;
    visibility:hidden;
  }

  93%{
    opacity:0;
    visibility:hidden;
  }

  100%{
    opacity:1;
    visibility:visible;
  }
}

.pp-design-sport-hero__overlay {
position:absolute;
  inset:0;
  z-index:-3;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(244,241,235,.99) 0%,
      rgba(244,241,235,.96) 27%,
      rgba(244,241,235,.78) 40%,
      rgba(244,241,235,.30) 55%,
      rgba(244,241,235,.04) 72%,
      rgba(244,241,235,0) 100%
    ),
    linear-gradient(
      180deg,
      rgba(244,241,235,.12) 0%,
      rgba(244,241,235,0) 48%,
      rgba(244,241,235,.18) 100%
    );
}

.pp-design-sport-hero__shell {
position:relative;
  z-index:2;

  width:min(
    1540px,
    calc(100% - clamp(40px, 5vw, 96px))
  );

  max-width:100%;
  min-width:0;

  margin:0 auto;
  padding:0;
}

.pp-design-sport-hero__content {
width:100%;
  max-width:min(940px, 58vw);

  margin:0;
  padding:
    clamp(90px, 7vw, 150px)
    0;
}

.pp-design-sport-hero__eyebrow {
display:inline-flex;
  align-items:center;

  gap:18px;

  margin:0 0 30px;
  padding:0;

  color:var(--pp-design-accent);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:13px;
  line-height:1;
  font-weight:500;
  letter-spacing:.38em;
  text-transform:uppercase;
}

.pp-design-sport-hero__eyebrow::before {
content:"";

  display:block;
  flex:0 0 auto;

  width:34px;
  height:1px;

  background:var(--pp-design-accent);
}

.pp-design-sport-hero h1 {
display:block;

  width:100%;
  max-width:1020px;

  margin:0;
  padding:0;

  color:var(--pp-design-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(76px, 8.2vw, 150px);
  line-height:.82;
  font-weight:500;
  letter-spacing:-.078em;
  text-transform:uppercase;

  word-break:normal;
  overflow-wrap:normal;
}

.pp-design-sport-hero h1::after {
content:".";

  color:var(--pp-design-accent);
}

.pp-design-sport-hero p {
display:block;

  width:100%;
  max-width:690px;

  margin:42px 0 0;
  padding:0;

  color:rgba(16,16,16,.76);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(21px, 1.35vw, 29px);
  line-height:1.48;
  font-weight:400;
  letter-spacing:-.028em;

  word-break:normal;
  overflow-wrap:break-word;
}

.pp-design-sport-hero__link {
position:relative;

  display:inline-flex;
  align-items:center;
  justify-content:flex-start;

  gap:26px;

  width:max-content;
  max-width:100%;

  margin:44px 0 0;
  padding:0 0 13px;

  border:0;
  border-bottom:1px solid rgba(165,134,103,.72);

  color:var(--pp-design-accent) !important;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:13px;
  line-height:1;
  font-weight:500;
  letter-spacing:.22em;
  text-transform:uppercase;
  text-decoration:none;

  transition:
    color .35s cubic-bezier(.22,1,.36,1),
    border-color .35s cubic-bezier(.22,1,.36,1);
}

.pp-design-sport-hero__link span {
display:inline-flex;
  align-items:center;
  justify-content:center;

  color:var(--pp-design-accent);

  font-size:24px;
  line-height:1;

  transform:translateY(-1px);

  transition:
    color .35s cubic-bezier(.22,1,.36,1),
    transform .35s cubic-bezier(.22,1,.36,1);
}

.pp-design-sport-hero__link:hover {
color:var(--pp-design-text) !important;
  border-color:var(--pp-design-text);
}

.pp-design-sport-hero__link:hover span {
color:var(--pp-design-text);

  transform:
    translate(6px, -1px);
}

@media (min-width:1800px) {
  .pp-design-sport-hero {
min-height:900px;
  }

  .pp-design-sport-hero__shell {
width:min(1660px, calc(100% - 120px));
  }

  .pp-design-sport-hero__content {
max-width:1040px;
  }

  .pp-design-sport-hero h1 {
font-size:154px;
  }

  .pp-design-sport-hero p {
max-width:720px;

    font-size:29px;
  }
}

@media (min-width:1200px) and (max-width:1799px) {
  .pp-design-sport-hero {
min-height:clamp(680px, 52vw, 900px);
  }

  .pp-design-sport-hero__shell {
width:min(1480px, calc(100% - 64px));
  }
}

@media (min-width:992px) and (max-width:1366px) {
  .pp-design-sport-hero {
min-height:clamp(650px, 56vw, 770px);
  }

  .pp-design-sport-hero__shell {
width:calc(100% - 54px);
  }

  .pp-design-sport-hero__content {
max-width:min(800px, 60vw);

    padding:
      clamp(82px, 7vw, 110px)
      0;
  }

  .pp-design-sport-hero h1 {
font-size:clamp(66px, 8.2vw, 116px);
  }

  .pp-design-sport-hero p {
max-width:610px;

    margin-top:34px;

    font-size:clamp(19px, 1.45vw, 24px);
  }

  .pp-design-sport-hero__link {
margin-top:36px;
  }
}

/* ========================================================= TABLET E MOBILE CONTEÚDO EM CIMA + IMAGEM 16:9 EM BAIXO ========================================================= */

@media (max-width:991px) {
  .pp-design-sport-hero {
display:grid;

    grid-template-columns:minmax(0, 1fr);
    grid-template-rows:auto auto;

    align-items:stretch;

    width:100%;
    min-height:0;

    overflow:hidden;

    background:var(--pp-design-bg);
  }

  .pp-design-sport-hero__shell {
position:relative;
    z-index:3;

    grid-column:1;
    grid-row:1;

    width:100%;
    max-width:100%;

    margin:0;
    padding:
      clamp(76px, 9vw, 112px)
      clamp(22px, 5vw, 48px)
      clamp(54px, 7vw, 84px);
  }

  .pp-design-sport-hero__content {
width:100%;
    max-width:780px;

    margin:0;
    padding:0;
  }

  .pp-design-sport-hero__media {
position:relative;
    inset:auto;
    z-index:1;

    grid-column:1;
    grid-row:2;

    display:block;

    width:100%;
    height:auto;
    min-height:0;
    max-height:none;

    aspect-ratio:16 / 9;

    margin:0;
    padding:0;

    overflow:hidden;

    background:var(--pp-design-bg);
  }

  .pp-design-sport-hero__slide {
position:absolute;
    inset:0;

    width:100%;
    height:100%;
  }

  .pp-design-sport-hero__slide img {
width:100%;
    height:100%;

    object-fit:contain;
    object-position:center center;

    background:var(--pp-design-bg);

    filter:
      saturate(.96)
      contrast(1.02)
      brightness(1);
  }

  /* O overlay antigo cobria a imagem toda no mobile. É removido porque o texto já está numa área independente. */

  .pp-design-sport-hero__overlay {
display:none;
  }

  .pp-design-sport-hero h1 {
max-width:780px;

    font-size:clamp(56px, 11.5vw, 94px);
    line-height:.88;
    letter-spacing:-.07em;
  }

  .pp-design-sport-hero p {
max-width:650px;

    margin-top:32px;

    font-size:clamp(19px, 2.5vw, 23px);
    line-height:1.5;
  }

  .pp-design-sport-hero__link {
margin-top:36px;
  }
}

@supports not (aspect-ratio:16 / 9) {
  @media (max-width:991px) {
    .pp-design-sport-hero__media {
height:0;

      padding-top:56.25%;
    }
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-design-sport-hero__shell {
padding:
      72px
      22px
      52px;
  }

  .pp-design-sport-hero__eyebrow {
gap:14px;

    margin-bottom:24px;

    font-size:11px;
    letter-spacing:.25em;
  }

  .pp-design-sport-hero__eyebrow::before {
width:28px;
  }

  .pp-design-sport-hero h1 {
max-width:100%;

    font-size:clamp(45px, 12.8vw, 68px);
    line-height:.9;
    letter-spacing:-.064em;
  }

  .pp-design-sport-hero p {
max-width:560px;

    margin-top:26px;

    font-size:18px;
    line-height:1.5;
  }

  .pp-design-sport-hero__link {
gap:20px;

    margin-top:32px;
    padding-bottom:11px;

    font-size:12px;
    letter-spacing:.17em;
  }

  .pp-design-sport-hero__link span {
font-size:21px;
  }

  .pp-design-sport-hero__media {
width:100%;
    height:auto;
    min-height:0;
    max-height:none;

    aspect-ratio:16 / 9;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:480px) {
  .pp-design-sport-hero__shell {
padding:
      62px
      18px
      46px;
  }

  .pp-design-sport-hero h1 {
font-size:clamp(41px, 12.5vw, 57px);
  }

  .pp-design-sport-hero p {
font-size:17px;
  }

  .pp-design-sport-hero__link {
gap:18px;

    font-size:11px;
    letter-spacing:.16em;
  }

  .pp-design-sport-hero__media {
aspect-ratio:16 / 9;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

@media (max-width:390px) {
  .pp-design-sport-hero__shell {
padding:
      56px
      15px
      42px;
  }

  .pp-design-sport-hero__eyebrow {
font-size:10px;
  }

  .pp-design-sport-hero h1 {
font-size:clamp(38px, 12.3vw, 48px);
    line-height:.92;
  }

  .pp-design-sport-hero p {
margin-top:22px;

    font-size:16px;
  }

  .pp-design-sport-hero__link {
margin-top:28px;
  }

  .pp-design-sport-hero__media {
aspect-ratio:16 / 9;
  }
}

/* ========================================================= TABLET/MOBILE NA HORIZONTAL ========================================================= */

@media (max-width:991px) and (orientation:landscape) {
  .pp-design-sport-hero__shell {
padding-top:60px;
    padding-bottom:44px;
  }

  .pp-design-sport-hero h1 {
max-width:720px;

    font-size:clamp(48px, 8vw, 78px);
  }

  .pp-design-sport-hero p {
max-width:620px;
  }

  .pp-design-sport-hero__media {
width:100%;
    height:auto;

    aspect-ratio:16 / 9;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-design-sport-hero__slide {
animation:none;
    transition:none;

    opacity:0;
    visibility:hidden;
  }

  .pp-design-sport-hero__slide:first-child {
opacity:1;
    visibility:visible;
  }

  .pp-design-sport-hero__link,
  .pp-design-sport-hero__link span {
transition:none;
  }
}

/* ========================================================= DESIGN SPORT — TECH FABRIC / FINAL BIGGER Substitui todo o CSS antigo .pp-design-tech ========================================================= */

.pp-design-tech {
position:relative;
  isolation:isolate;
  overflow:hidden;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  min-height:clamp(680px, 48vw, 860px);
  display:flex;
  align-items:center;
  background:#050505;
  color:#fff;
}

.pp-design-tech__media,
.pp-design-tech__overlay {
position:absolute;
  inset:0;
}

.pp-design-tech__media {
z-index:-3;
}

.pp-design-tech__media img {
width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.84) contrast(1.14) brightness(.72);
  transform:scale(1.035);
}

.pp-design-tech__overlay {
z-index:-2;
  pointer-events:none;
  background:
    radial-gradient(circle at 68% 44%, rgba(255,255,255,.10), transparent 28%),
    linear-gradient(
      90deg,
      rgba(5,5,5,.96) 0%,
      rgba(5,5,5,.78) 34%,
      rgba(5,5,5,.42) 64%,
      rgba(5,5,5,.26) 100%
    ),
    linear-gradient(
      180deg,
      rgba(5,5,5,.14) 0%,
      rgba(5,5,5,.22) 44%,
      rgba(5,5,5,.82) 100%
    );
}

.pp-design-tech__shell {
position:relative;
  z-index:2;
  width:min(1540px, calc(100% - 64px));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0, 620px) minmax(0, 1fr);
  gap:clamp(70px, 9vw, 160px);
  align-items:end;
}

.pp-design-tech__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;
  margin-bottom:30px;
  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:12px;
  line-height:1;
  letter-spacing:.24em;
  text-transform:uppercase;
}

.pp-design-tech__eyebrow::after {
content:"";
  width:50px;
  height:1px;
  background:#A58667;
}

.pp-design-tech h2 {
margin:0;
  color:#fff;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(62px, 6vw, 118px);
  line-height:.84;
  letter-spacing:-.078em;
  text-transform:uppercase;
  font-weight:500;
}

.pp-design-tech p {
max-width:680px;
  margin:34px 0 0;
  color:rgba(255,255,255,.82);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(21px, 1.38vw, 28px);
  line-height:1.48;
  letter-spacing:-.028em;
}

.pp-design-tech__points {
display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  border-top:1px solid rgba(255,255,255,.18);
}

.pp-design-tech__points article {
padding:34px 28px 0 0;
}

.pp-design-tech__points span {
display:block;
  margin-bottom:16px;
  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:14px;
  line-height:1;
  letter-spacing:.16em;
}

.pp-design-tech__points strong {
display:block;
  color:#fff;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(15px, 1.08vw, 19px);
  line-height:1.16;
  letter-spacing:.08em;
  text-transform:uppercase;
}

@media (max-width:1366px) {
  .pp-design-tech {
min-height:clamp(640px, 50vw, 760px);
  }

  .pp-design-tech__shell {
width:min(1360px, calc(100% - 54px));
    grid-template-columns:minmax(0, 560px) minmax(0, 1fr);
    gap:clamp(54px, 7vw, 110px);
  }

  .pp-design-tech h2 {
font-size:clamp(56px, 5.8vw, 98px);
  }

  .pp-design-tech p {
font-size:clamp(20px, 1.32vw, 24px);
  }
}

@media (max-width:991px) {
  .pp-design-tech {
min-height:auto;
    padding:110px 0;
  }

  .pp-design-tech__media img {
object-position:center;
    filter:saturate(.82) contrast(1.12) brightness(.62);
  }

  .pp-design-tech__overlay {
background:
      linear-gradient(
        180deg,
        rgba(5,5,5,.92) 0%,
        rgba(5,5,5,.66) 42%,
        rgba(5,5,5,.88) 100%
      );
  }

  .pp-design-tech__shell {
width:calc(100% - 28px);
    grid-template-columns:1fr;
    gap:58px;
  }

  .pp-design-tech h2 {
font-size:clamp(48px, 11vw, 82px);
    line-height:.9;
  }

  .pp-design-tech p {
max-width:720px;
    font-size:clamp(19px, 2.4vw, 23px);
    line-height:1.55;
  }

  .pp-design-tech__points {
grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:30px;
  }

  .pp-design-tech__points article {
padding-top:28px;
  }
}

@media (max-width:575px) {
  .pp-design-tech {
padding:88px 0;
  }

  .pp-design-tech h2 {
font-size:42px;
  }

  .pp-design-tech p {
font-size:18px;
    line-height:1.55;
  }

  .pp-design-tech__points {
grid-template-columns:1fr;
    gap:26px;
  }

  .pp-design-tech__points article {
padding:24px 0 0;
  }

  .pp-design-tech__points strong {
font-size:15px;
  }
}

@media (max-width:390px) {
  .pp-design-tech {
padding:78px 0;
  }

  .pp-design-tech h2 {
font-size:38px;
  }

  .pp-design-tech p {
font-size:17px;
  }
}

/* ========================================================= DESIGN SPORT — DETAIL ========================================================= */

.pp-design-detail {
position:relative;
  overflow:hidden;
  background:#f4f1eb;
  color:#101010;
  padding:clamp(88px, 8vw, 140px) 0;
}

.pp-design-detail::before {
content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(0,0,0,.03) 1px, transparent 1px),
    linear-gradient(180deg, rgba(0,0,0,.02) 1px, transparent 1px);
  background-size:82px 82px;
  opacity:.34;
  mask-image:radial-gradient(circle at 50% 40%, #000 0%, transparent 78%);
}

.pp-design-detail__shell {
position:relative;
  z-index:2;
  width:min(1540px, calc(100% - 64px));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0, 560px) minmax(0, 1fr);
  gap:clamp(56px, 7vw, 110px);
  align-items:center;
}

.pp-design-detail__copy {
position:relative;
  z-index:3;
}

.pp-design-detail__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;
  margin-bottom:24px;
  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:12px;
  line-height:1;
  letter-spacing:.24em;
  text-transform:uppercase;
}

.pp-design-detail__eyebrow::after {
content:"";
  width:46px;
  height:1px;
  background:#A58667;
}

.pp-design-detail h2 {
margin:0;
  color:#101010;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(54px, 5.6vw, 106px);
  line-height:.86;
  letter-spacing:-.075em;
  text-transform:uppercase;
  font-weight:500;
}

.pp-design-detail h2::after {
content:".";
  color:#A58667;
}

.pp-design-detail p {
max-width:620px;
  margin:30px 0 0;
  color:rgba(16,16,16,.74);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(22px, 1.42vw, 30px);
  line-height:1.5;
  letter-spacing:-.02em;
}

/* BOTÃO — IGUAL AO ESTILO SERVICES */

.pp-design-detail a {
position:relative;
  width:max-content;
  max-width:100%;
  margin-top:38px;
  padding:0 0 13px 0;

  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:26px;

  border-bottom:1px solid rgba(165,134,103,.72);

  color:#A58667 !important;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:13px;
  line-height:1;
  letter-spacing:.22em;
  text-transform:uppercase;
  text-decoration:none;

  transition:
    color .35s cubic-bezier(.22,1,.36,1),
    border-color .35s cubic-bezier(.22,1,.36,1);
}

.pp-design-detail a span {
display:inline-flex;
  align-items:center;
  justify-content:center;

  color:#A58667;
  font-size:24px;
  line-height:1;
  transform:translateY(-1px);

  transition:
    transform .35s cubic-bezier(.22,1,.36,1),
    color .35s cubic-bezier(.22,1,.36,1);
}

.pp-design-detail a:hover {
color:#101010 !important;
  border-color:#101010;
}

.pp-design-detail a:hover span {
color:#101010;
  transform:translate(6px, -1px);
}

.pp-design-detail__visual {
position:relative;
  min-width:0;
  width:100%;
  display:block;
}

.pp-design-detail__image {
position:relative;
  width:100%;
  height:clamp(440px, 40vw, 760px);
  background:#f4f1eb;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}

.pp-design-detail__image img {
display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
  background:#f4f1eb;
}

@media (max-width:1199px) {
  .pp-design-detail__shell {
grid-template-columns:1fr;
    gap:46px;
  }

  .pp-design-detail__image {
height:clamp(420px, 58vw, 720px);
  }

  .pp-design-detail p {
max-width:100%;
  }
}

@media (max-width:767px) {
  .pp-design-detail {
padding:78px 0;
  }

  .pp-design-detail__shell {
width:calc(100% - 28px);
    gap:34px;
  }

  .pp-design-detail__eyebrow {
font-size:11px;
    letter-spacing:.18em;
    margin-bottom:22px;
  }

  .pp-design-detail__eyebrow::after {
width:34px;
  }

  .pp-design-detail h2 {
font-size:42px;
    line-height:.9;
  }

  .pp-design-detail p {
margin-top:26px;
    font-size:18px;
    line-height:1.55;
  }

  .pp-design-detail a {
margin-top:34px;
    gap:22px;
    font-size:12px;
    letter-spacing:.18em;
  }

  .pp-design-detail a span {
font-size:22px;
  }

  .pp-design-detail__image {
height:auto;
    min-height:0;
  }

  .pp-design-detail__image img {
width:100%;
    height:auto;
    object-fit:contain;
  }
}

@media (max-width:390px) {
  .pp-design-detail h2 {
font-size:38px;
  }

  .pp-design-detail p {
font-size:17px;
  }

  .pp-design-detail a {
gap:18px;
    font-size:11px;
    letter-spacing:.16em;
  }
}

/* ========================================================= DESIGN SPORT — PROCESS / BIGGER TEXT FINAL Substitui todo o CSS antigo .pp-design-process ========================================================= */

.pp-design-process {
position:relative;
  overflow:hidden;
  background:#f4f1eb;
  color:#101010;
  padding:clamp(88px, 7.5vw, 132px) 0;
  border-top:1px solid rgba(16,16,16,.10);
}

.pp-design-process::before {
content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(0,0,0,.028) 1px, transparent 1px),
    linear-gradient(180deg, rgba(0,0,0,.020) 1px, transparent 1px);
  background-size:82px 82px;
  opacity:.34;
  mask-image:radial-gradient(circle at 50% 42%, #000 0%, transparent 78%);
}

.pp-design-process__shell {
position:relative;
  z-index:2;
  width:min(1540px, calc(100% - 64px));
  margin:0 auto;
}

.pp-design-process__head {
display:grid;
  grid-template-columns:minmax(0, 420px) minmax(0, 1fr);
  gap:clamp(44px, 7vw, 120px);
  align-items:end;
  margin-bottom:clamp(56px, 5.4vw, 84px);
}

.pp-design-process__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;
  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:13px;
  line-height:1;
  letter-spacing:.24em;
  text-transform:uppercase;
}

.pp-design-process__eyebrow::after {
content:"";
  width:46px;
  height:1px;
  background:#A58667;
}

.pp-design-process h2 {
margin:0;
  color:#101010;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(52px, 5.3vw, 96px);
  line-height:.88;
  letter-spacing:-.074em;
  text-transform:uppercase;
  font-weight:500;
}

/* LINHA DO PROCESSO */

.pp-design-process__line {
display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:0;
  border-top:1px solid rgba(16,16,16,.18);
}

.pp-design-process__line article {
position:relative;
  padding:42px 34px 0 0;
}

.pp-design-process__line article:not(:last-child)::after {
content:"";
  position:absolute;
  top:-1px;
  right:34px;
  width:54px;
  height:1px;
  background:#A58667;
}

.pp-design-process__line span {
display:block;
  margin-bottom:22px;
  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(17px, 1.05vw, 22px);
  line-height:1;
  letter-spacing:.14em;
}

.pp-design-process__line h3 {
margin:0 0 16px;
  color:#101010;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(22px, 1.55vw, 32px);
  line-height:1.05;
  letter-spacing:-.035em;
  text-transform:none;
  font-weight:500;
}

.pp-design-process__line p {
max-width:280px;
  margin:0;
  color:rgba(16,16,16,.66);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(17px, 1.05vw, 21px);
  line-height:1.52;
  letter-spacing:-.02em;
}

@media (max-width:1366px) {
  .pp-design-process__shell {
width:min(1360px, calc(100% - 54px));
  }

  .pp-design-process h2 {
font-size:clamp(48px, 5vw, 84px);
  }

  .pp-design-process__line h3 {
font-size:clamp(20px, 1.45vw, 28px);
  }

  .pp-design-process__line p {
font-size:clamp(16px, 1vw, 19px);
  }
}

@media (max-width:991px) {
  .pp-design-process {
padding:86px 0;
  }

  .pp-design-process__shell {
width:calc(100% - 28px);
  }

  .pp-design-process__head {
grid-template-columns:1fr;
    gap:34px;
  }

  .pp-design-process h2 {
font-size:clamp(46px, 10.5vw, 78px);
    line-height:.9;
  }

  .pp-design-process__line {
grid-template-columns:1fr;
    gap:0;
  }

  .pp-design-process__line article {
display:grid;
    grid-template-columns:72px 1fr;
    column-gap:24px;
    padding:30px 0;
    border-bottom:1px solid rgba(16,16,16,.12);
  }

  .pp-design-process__line article:not(:last-child)::after {
display:none;
  }

  .pp-design-process__line article:last-child {
border-bottom:0;
  }

  .pp-design-process__line span {
margin:0;
    font-size:20px;
  }

  .pp-design-process__line h3 {
margin:0 0 10px;
    font-size:clamp(24px, 5vw, 34px);
  }

  .pp-design-process__line p {
max-width:640px;
    font-size:clamp(17px, 2.4vw, 21px);
  }

  .pp-design-process__line h3,
  .pp-design-process__line p {
grid-column:2;
  }
}

@media (max-width:575px) {
  .pp-design-process {
padding:76px 0;
  }

  .pp-design-process__shell {
width:calc(100% - 22px);
  }

  .pp-design-process__eyebrow {
font-size:11px;
    letter-spacing:.18em;
  }

  .pp-design-process__eyebrow::after {
width:34px;
  }

  .pp-design-process h2 {
font-size:40px;
  }

  .pp-design-process__line article {
grid-template-columns:1fr;
    gap:12px;
    padding:28px 0;
  }

  .pp-design-process__line span {
font-size:18px;
    margin-bottom:4px;
  }

  .pp-design-process__line h3,
  .pp-design-process__line p {
grid-column:auto;
  }

  .pp-design-process__line h3 {
font-size:28px;
  }

  .pp-design-process__line p {
font-size:17px;
    line-height:1.55;
  }
}

@media (max-width:390px) {
  .pp-design-process h2 {
font-size:36px;
  }

  .pp-design-process__line h3 {
font-size:25px;
  }

  .pp-design-process__line p {
font-size:16px;
  }
}

/* ========================================================= DESIGN SPORT — FINAL CTA RESPONSIVE PARA TODOS OS ECRÃS Substitui todo o CSS antigo .pp-design-sport-cta ========================================================= */

.pp-design-sport-cta {
--pp-cta-accent:#A58667;
  --pp-cta-white:#ffffff;
  --pp-cta-black:#050505;

  position:relative;
  isolation:isolate;

  display:flex;
  align-items:center;

  width:100%;
  max-width:100%;
  min-width:0;

  min-height:clamp(620px, 44vw, 780px);

  margin:0;

  overflow:clip;

  background:var(--pp-cta-black);
  color:var(--pp-cta-white);
}

@supports not (overflow:clip) {
  .pp-design-sport-cta {
overflow:hidden;
  }
}

.pp-design-sport-cta *,
.pp-design-sport-cta *::before,
.pp-design-sport-cta *::after {
box-sizing:border-box;
}

.pp-design-sport-cta__media,
.pp-design-sport-cta__overlay {
position:absolute;
  inset:0;
}

.pp-design-sport-cta__media {
z-index:-3;

  overflow:hidden;

  background:var(--pp-cta-black);
}

.pp-design-sport-cta__media img {
display:block;

  width:100%;
  height:100%;
  max-width:none;

  object-fit:cover;
  object-position:center right;

  filter:
    saturate(.95)
    contrast(1.08)
    brightness(.94);

  transform:scale(1.02);
  transform-origin:center;

  transition:
    transform 1.2s cubic-bezier(.22,1,.36,1),
    filter .6s cubic-bezier(.22,1,.36,1);
}

.pp-design-sport-cta__overlay {
z-index:-2;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,.93) 0%,
      rgba(0,0,0,.87) 28%,
      rgba(0,0,0,.61) 48%,
      rgba(0,0,0,.25) 69%,
      rgba(0,0,0,.07) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,.12) 0%,
      rgba(0,0,0,0) 43%,
      rgba(0,0,0,.38) 100%
    );
}

.pp-design-sport-cta::before {
content:"";

  position:absolute;
  inset:0;
  z-index:-1;

  pointer-events:none;

  background:
    radial-gradient(
      circle at 18% 42%,
      rgba(165,134,103,.16),
      transparent 34%
    ),
    linear-gradient(
      90deg,
      rgba(255,255,255,.035) 1px,
      transparent 1px
    ),
    linear-gradient(
      180deg,
      rgba(255,255,255,.026) 1px,
      transparent 1px
    );

  background-size:
    auto,
    92px 92px,
    92px 92px;

  opacity:.22;

  -webkit-mask-image:
    linear-gradient(
      90deg,
      #000 0%,
      #000 42%,
      transparent 82%
    );

  mask-image:
    linear-gradient(
      90deg,
      #000 0%,
      #000 42%,
      transparent 82%
    );
}

.pp-design-sport-cta__shell {
position:relative;
  z-index:2;

  width:min(
    1540px,
    calc(100% - clamp(48px, 5vw, 96px))
  );

  max-width:none;
  min-width:0;

  margin:0 auto;

  padding-left:max(0px, env(safe-area-inset-left));
  padding-right:max(0px, env(safe-area-inset-right));
}

.pp-design-sport-cta__content {
width:100%;
  max-width:900px;
  min-width:0;

  padding:
    clamp(88px, 7vw, 128px)
    0;
}

.pp-design-sport-cta__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;

  max-width:100%;

  margin:
    0
    0
    clamp(22px, 2vw, 28px);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1;
  font-weight:500;
  letter-spacing:.24em;
  text-transform:uppercase;

  color:var(--pp-cta-accent);
}

.pp-design-sport-cta__eyebrow::after {
content:"";

  display:block;
  flex:0 0 auto;

  width:46px;
  height:1px;

  background:var(--pp-cta-accent);
}

.pp-design-sport-cta h2 {
width:100%;
  max-width:980px;
  min-width:0;

  margin:0;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(60px, 6.2vw, 118px);
  line-height:.84;
  font-weight:500;
  letter-spacing:-.082em;
  text-transform:uppercase;

  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;
  text-wrap:balance;

  color:var(--pp-cta-white);
}

.pp-design-sport-cta h2::after {
content:".";

  color:var(--pp-cta-accent);
}

.pp-design-sport-cta p {
width:100%;
  max-width:660px;
  min-width:0;

  margin:
    clamp(26px, 2.2vw, 34px)
    0
    0;

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(18px, 1.18vw, 22px);
  line-height:1.52;
  font-weight:400;
  letter-spacing:-.02em;

  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;

  color:rgba(255,255,255,.82);
}

.pp-design-sport-cta__btn {
position:relative;
  isolation:isolate;

  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:22px;

  width:fit-content;
  max-width:100%;
  min-width:0;
  min-height:62px;

  margin-top:42px;

  padding:
    0
    18px
    0
    30px;

  overflow:hidden;

  border:1px solid rgba(255,255,255,.32);
  border-radius:999px;

  background:rgba(255,255,255,.055);
  color:var(--pp-cta-white) !important;

  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 16px 46px rgba(0,0,0,.24);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1;
  font-weight:500;
  letter-spacing:.14em;
  text-transform:uppercase;
  text-align:center;

  white-space:nowrap;

  transition:
    color .38s cubic-bezier(.22,1,.36,1),
    border-color .38s cubic-bezier(.22,1,.36,1),
    background-color .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1),
    box-shadow .38s cubic-bezier(.22,1,.36,1);
}

.pp-design-sport-cta__btn::before {
content:"";

  position:absolute;
  inset:0;
  z-index:-1;

  border-radius:inherit;

  background:var(--pp-cta-white);

  transform:translateY(105%);

  transition:
    transform .46s cubic-bezier(.22,1,.36,1);
}

.pp-design-sport-cta__btn::after {
content:none;
  display:none;
}

.pp-design-sport-cta__btn i {
position:relative;

  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;

  width:42px;
  height:42px;

  border-radius:50%;

  background:var(--pp-cta-accent);
  color:var(--pp-cta-white);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 10px 26px rgba(165,134,103,.24);

  transition:
    background-color .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1),
    color .38s cubic-bezier(.22,1,.36,1);
}

.pp-design-sport-cta__btn i::before {
content:"";

  position:absolute;
  left:50%;
  top:50%;

  width:15px;
  height:1px;

  background:currentColor;

  transform:translate(-52%, -50%);
}

.pp-design-sport-cta__btn i::after {
content:"";

  position:absolute;
  left:50%;
  top:50%;

  width:7px;
  height:7px;

  border-top:1px solid currentColor;
  border-right:1px solid currentColor;

  transform:
    translate(-6%, -50%)
    rotate(45deg);
}

@media (hover:hover) and (pointer:fine) {
  .pp-design-sport-cta:hover
  .pp-design-sport-cta__media img {
transform:scale(1.045);

    filter:
      saturate(.98)
      contrast(1.06)
      brightness(.98);
  }

  .pp-design-sport-cta__btn:hover {
color:var(--pp-cta-black) !important;

    border-color:var(--pp-cta-white);

    transform:translateY(-2px);

    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.24),
      0 22px 60px rgba(0,0,0,.32);
  }

  .pp-design-sport-cta__btn:hover::before {
transform:translateY(0);
  }

  .pp-design-sport-cta__btn:hover i {
background:var(--pp-cta-black);
    color:var(--pp-cta-white);

    transform:translateX(4px);
  }
}

.pp-design-sport-cta__btn:focus-visible {
outline:2px solid var(--pp-cta-white);
  outline-offset:4px;
}

.pp-design-sport-cta__btn:active {
transform:scale(.985);
}

@media (min-width:1800px) {
  .pp-design-sport-cta {
min-height:800px;
  }

  .pp-design-sport-cta__shell {
width:min(1640px, calc(100% - 140px));
  }

  .pp-design-sport-cta__content {
max-width:980px;

    padding:
      132px
      0;
  }

  .pp-design-sport-cta h2 {
font-size:clamp(106px, 6.4vw, 142px);
  }

  .pp-design-sport-cta p {
max-width:700px;

    font-size:23px;
  }
}

@media (min-width:1200px) and (max-width:1599px) {
  .pp-design-sport-cta {
min-height:clamp(640px, 48vw, 740px);
  }

  .pp-design-sport-cta__shell {
width:min(1380px, calc(100% - 64px));
  }

  .pp-design-sport-cta__content {
max-width:820px;
  }

  .pp-design-sport-cta h2 {
font-size:clamp(64px, 6.1vw, 104px);
  }

  .pp-design-sport-cta p {
max-width:620px;

    font-size:clamp(18px, 1.35vw, 21px);
  }
}

@media (max-width:1199px) {
  .pp-design-sport-cta {
min-height:650px;
  }

  .pp-design-sport-cta__shell {
width:calc(100% - 54px);
  }

  .pp-design-sport-cta__content {
max-width:760px;

    padding:
      92px
      0;
  }

  .pp-design-sport-cta__media img {
object-position:68% center;

    filter:
      saturate(.94)
      contrast(1.06)
      brightness(.88);
  }

  .pp-design-sport-cta__overlay {
background:
      linear-gradient(
        90deg,
        rgba(0,0,0,.92) 0%,
        rgba(0,0,0,.80) 43%,
        rgba(0,0,0,.39) 74%,
        rgba(0,0,0,.16) 100%
      ),
      linear-gradient(
        180deg,
        rgba(0,0,0,.22) 0%,
        rgba(0,0,0,.05) 42%,
        rgba(0,0,0,.65) 100%
      );
  }

  .pp-design-sport-cta h2 {
font-size:clamp(56px, 8vw, 88px);
    line-height:.87;
    letter-spacing:-.076em;
  }

  .pp-design-sport-cta p {
max-width:590px;

    font-size:18px;
  }
}

@media (max-width:991px) {
  .pp-design-sport-cta {
min-height:640px;
  }

  .pp-design-sport-cta__shell {
width:calc(100% - 44px);
  }

  .pp-design-sport-cta__content {
max-width:680px;

    padding:
      84px
      0;
  }

  .pp-design-sport-cta__media img {
object-position:70% center;

    filter:
      saturate(.93)
      contrast(1.05)
      brightness(.84);
  }

  .pp-design-sport-cta__overlay {
background:
      linear-gradient(
        90deg,
        rgba(0,0,0,.93) 0%,
        rgba(0,0,0,.79) 50%,
        rgba(0,0,0,.42) 100%
      ),
      linear-gradient(
        180deg,
        rgba(0,0,0,.26) 0%,
        rgba(0,0,0,.08) 43%,
        rgba(0,0,0,.69) 100%
      );
  }

  .pp-design-sport-cta::before {
background-size:
      auto,
      72px 72px,
      72px 72px;

    opacity:.17;
  }

  .pp-design-sport-cta h2 {
max-width:700px;

    font-size:clamp(50px, 10vw, 78px);
    line-height:.88;
  }

  .pp-design-sport-cta p {
max-width:560px;

    font-size:17px;
  }

  .pp-design-sport-cta__btn {
min-height:60px;

    margin-top:38px;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-design-sport-cta {
min-height:clamp(600px, 150vw, 720px);

    align-items:center;
  }

  .pp-design-sport-cta__shell {
width:calc(100% - 32px);
  }

  .pp-design-sport-cta__content {
width:100%;
    max-width:100%;

    padding:
      78px
      0;
  }

  .pp-design-sport-cta__media img {
object-position:72% center;

    filter:
      saturate(.92)
      contrast(1.05)
      brightness(.78);

    transform:scale(1.01);
  }

  .pp-design-sport-cta__overlay {
background:
      linear-gradient(
        90deg,
        rgba(0,0,0,.93) 0%,
        rgba(0,0,0,.82) 56%,
        rgba(0,0,0,.48) 100%
      ),
      linear-gradient(
        180deg,
        rgba(0,0,0,.32) 0%,
        rgba(0,0,0,.08) 42%,
        rgba(0,0,0,.76) 100%
      );
  }

  .pp-design-sport-cta::before {
background:
      radial-gradient(
        circle at 20% 38%,
        rgba(165,134,103,.15),
        transparent 36%
      );

    opacity:.7;

    -webkit-mask-image:none;
    mask-image:none;
  }

  .pp-design-sport-cta__eyebrow {
gap:14px;

    margin-bottom:22px;

    font-size:10.5px;
    letter-spacing:.2em;
  }

  .pp-design-sport-cta__eyebrow::after {
width:34px;
  }

  .pp-design-sport-cta h2 {
max-width:100%;

    font-size:clamp(42px, 11vw, 60px);
    line-height:.9;
    letter-spacing:-.068em;
  }

  .pp-design-sport-cta p {
max-width:34rem;

    margin-top:24px;

    font-size:16px;
    line-height:1.55;
  }

  .pp-design-sport-cta__btn {
width:fit-content;
    max-width:100%;

    min-height:56px;

    margin-top:34px;

    padding:
      0
      9px
      0
      21px;

    justify-content:flex-start;
    gap:16px;

    font-size:11px;
    line-height:1;
    letter-spacing:.12em;

    white-space:nowrap;
  }

  .pp-design-sport-cta__btn i {
width:40px;
    height:40px;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:575px) {
  .pp-design-sport-cta {
min-height:clamp(600px, 170vw, 700px);
  }

  .pp-design-sport-cta__shell {
width:calc(100% - 26px);
  }

  .pp-design-sport-cta__content {
padding:
      72px
      0;
  }

  .pp-design-sport-cta__media img {
object-position:74% center;

    filter:
      saturate(.91)
      contrast(1.04)
      brightness(.75);
  }

  .pp-design-sport-cta__overlay {
background:
      linear-gradient(
        90deg,
        rgba(0,0,0,.94) 0%,
        rgba(0,0,0,.84) 58%,
        rgba(0,0,0,.52) 100%
      ),
      linear-gradient(
        180deg,
        rgba(0,0,0,.33) 0%,
        rgba(0,0,0,.09) 42%,
        rgba(0,0,0,.78) 100%
      );
  }

  .pp-design-sport-cta__eyebrow {
margin-bottom:20px;

    font-size:10px;
  }

  .pp-design-sport-cta h2 {
font-size:clamp(39px, 11vw, 52px);
    line-height:.92;
  }

  .pp-design-sport-cta p {
max-width:30rem;

    margin-top:22px;

    font-size:15.5px;
    line-height:1.55;
  }

  .pp-design-sport-cta__btn {
min-height:54px;

    margin-top:31px;

    padding:
      0
      8px
      0
      19px;

    gap:14px;

    font-size:10.5px;
    letter-spacing:.115em;
  }

  .pp-design-sport-cta__btn i {
width:38px;
    height:38px;
  }

  .pp-design-sport-cta__btn i::before {
width:14px;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

@media (max-width:390px) {
  .pp-design-sport-cta {
min-height:610px;
  }

  .pp-design-sport-cta__shell {
width:calc(100% - 22px);
  }

  .pp-design-sport-cta__content {
padding:
      66px
      0;
  }

  .pp-design-sport-cta h2 {
font-size:clamp(36px, 10.7vw, 42px);
    line-height:.94;
  }

  .pp-design-sport-cta p {
font-size:15px;
    line-height:1.52;
  }

  .pp-design-sport-cta__btn {
min-height:52px;

    padding:
      0
      7px
      0
      17px;

    gap:12px;

    font-size:10px;
    letter-spacing:.1em;
  }

  .pp-design-sport-cta__btn i {
width:36px;
    height:36px;
  }
}

/* ========================================================= MOBILE EXTREMAMENTE PEQUENO ========================================================= */

@media (max-width:340px) {
  .pp-design-sport-cta__shell {
width:calc(100% - 18px);
  }

  .pp-design-sport-cta h2 {
font-size:34px;
  }

  .pp-design-sport-cta p {
font-size:14.5px;
  }

  .pp-design-sport-cta__btn {
padding:
      0
      7px
      0
      15px;

    gap:10px;

    font-size:9.5px;
  }

  .pp-design-sport-cta__btn i {
width:34px;
    height:34px;
  }
}

/* ========================================================= MOBILE HORIZONTAL ========================================================= */

@media (max-width:900px) and (orientation:landscape) {
  .pp-design-sport-cta {
min-height:max(500px, 100svh);
  }

  .pp-design-sport-cta__shell {
width:calc(100% - 48px);
  }

  .pp-design-sport-cta__content {
max-width:650px;

    padding:
      68px
      0;
  }

  .pp-design-sport-cta__media img {
object-position:72% center;
  }

  .pp-design-sport-cta h2 {
max-width:650px;

    font-size:clamp(42px, 7vw, 62px);
  }

  .pp-design-sport-cta p {
max-width:570px;

    font-size:15.5px;
  }

  .pp-design-sport-cta__btn {
margin-top:28px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-design-sport-cta__media img,
  .pp-design-sport-cta__btn,
  .pp-design-sport-cta__btn::before,
  .pp-design-sport-cta__btn i {
transition:none !important;
  }
}

/* ================================================================================================================= TRANSFERS PAGE ======================================================================================================================== */

/* ========================================================= TRANSFERS PAGE — DESIGN SYSTEM ========================================================= */

.pp-trf-intro,
.pp-trf-types,
.pp-trf-process {
--trf-bg:#f4f1eb;
  --trf-black:#050505;
  --trf-text:#101010;
  --trf-muted:rgba(16,16,16,.68);
  --trf-accent:#A58667;

  font-family:"URWGeometricMedium", "Figtree", sans-serif;
}

.pp-trf-eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;
  width:max-content;
  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:12px;
  line-height:1;
  letter-spacing:.28em;
  text-transform:uppercase;
}

.pp-trf-eyebrow::before {
content:"";
  width:42px;
  height:1px;
  background:#A58667;
}

/* ========================================================= TRANSFERS — TRANSFER CERTO / INTRO RESPONSIVE DESKTOP / TABLET / MOBILE ========================================================= */

.pp-trf-intro {
--pp-trf-intro-bg:#f4f1eb;
  --pp-trf-intro-text:#101010;
  --pp-trf-intro-muted:rgba(16,16,16,.68);
  --pp-trf-intro-accent:#A58667;
  --pp-trf-intro-line:rgba(16,16,16,.08);

  position:relative;
  isolation:isolate;

  display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0;

  padding:
    clamp(94px, 8vw, 148px)
    0;

  overflow:clip;

  background:var(--pp-trf-intro-bg);
  color:var(--pp-trf-intro-text);
}

@supports not (overflow:clip) {
  .pp-trf-intro {
overflow:hidden;
  }
}

.pp-trf-intro *,
.pp-trf-intro *::before,
.pp-trf-intro *::after {
box-sizing:border-box;
}

.pp-trf-intro::before {
content:"";

  position:absolute;
  inset:0;
  z-index:0;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,.026) 1px,
      transparent 1px
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,.018) 1px,
      transparent 1px
    );

  background-size:
    82px 82px,
    82px 82px;

  opacity:.34;
}

.pp-trf-intro::after {
content:"";

  position:absolute;
  right:-12%;
  top:10%;
  z-index:0;

  width:55%;
  height:80%;

  pointer-events:none;

  background:
    radial-gradient(
      circle at center,
      rgba(165,134,103,.11),
      transparent 67%
    );

  opacity:.7;
}

.pp-trf-intro__shell {
position:relative;
  z-index:2;

  display:grid;
  grid-template-columns:
    minmax(0, 600px)
    minmax(480px, 1fr);

  align-items:center;

  gap:clamp(54px, 7vw, 126px);

  width:min(
    1540px,
    calc(100% - clamp(48px, 5vw, 96px))
  );

  max-width:100%;
  min-width:0;

  margin:0 auto;
  padding:0;
}

.pp-trf-intro__copy {
position:relative;

  display:block;

  width:100%;
  max-width:620px;
  min-width:0;

  margin:0;
  padding:0;
}

.pp-trf-intro .pp-trf-eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;

  width:auto;
  max-width:100%;

  margin:0;
  padding:0;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1.2;
  font-weight:500;
  letter-spacing:.28em;
  text-transform:uppercase;

  white-space:normal;

  color:var(--pp-trf-intro-accent);
}

.pp-trf-intro .pp-trf-eyebrow::before {
content:"";

  display:block;
  flex:0 0 auto;

  width:42px;
  height:1px;

  background:var(--pp-trf-intro-accent);
}

.pp-trf-intro__copy h2 {
display:block;

  width:100%;
  max-width:650px;
  min-width:0;

  margin:
    clamp(25px, 2.2vw, 32px)
    0
    0;

  padding:0;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(58px, 5.9vw, 110px);
  line-height:.87;
  font-weight:500;
  letter-spacing:-.078em;
  text-transform:uppercase;

  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;
  text-wrap:balance;

  color:var(--pp-trf-intro-text);
}

.pp-trf-intro__copy h2::after {
content:none !important;
  display:none !important;
}

.pp-trf-intro__copy p {
display:block;

  width:100%;
  max-width:620px;
  min-width:0;

  margin:
    clamp(28px, 2.6vw, 38px)
    0
    0;

  padding:0;

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(18px, 1.25vw, 24px);
  line-height:1.58;
  font-weight:400;
  letter-spacing:-.02em;

  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;
  hyphens:none;

  color:var(--pp-trf-intro-muted);
}

.pp-trf-intro__visual {
position:relative;
  isolation:isolate;

  display:block !important;

  width:100%;
  max-width:100%;
  min-width:0;

  height:clamp(480px, 40vw, 720px);
  min-height:0;

  margin:0;
  padding:0;

  overflow:hidden;

  background:
    linear-gradient(
      135deg,
      rgba(165,134,103,.13),
      rgba(16,16,16,.08)
    ),
    #dedbd5;
}

.pp-trf-intro__visual.reveal-up,
.pp-trf-intro__visual.reveal-up.is-visible {
display:block !important;

  opacity:1 !important;
  visibility:visible !important;

  transform:none !important;
}

.pp-trf-intro__visual::after {
content:"";

  position:absolute;
  inset:0;
  z-index:2;

  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      rgba(0,0,0,.02) 0%,
      rgba(0,0,0,0) 55%,
      rgba(0,0,0,.12) 100%
    );

  opacity:.6;
}

.pp-trf-intro__visual img {
position:absolute;
  inset:0;
  z-index:1;

  display:block !important;

  width:100%;
  height:100%;
  max-width:none;
  min-width:100%;
  min-height:100%;

  margin:0;
  padding:0;

  object-fit:cover;
  object-position:center;

  opacity:1 !important;
  visibility:visible !important;

  filter:
    saturate(.9)
    contrast(1.04)
    brightness(.97);

  transform:scale(1.01);
  transform-origin:center;

  transition:
    transform .9s cubic-bezier(.22,1,.36,1),
    filter .55s cubic-bezier(.22,1,.36,1);
}

@media (hover:hover) and (pointer:fine) {
  .pp-trf-intro__visual:hover img {
transform:scale(1.045);

    filter:
      saturate(.96)
      contrast(1.03)
      brightness(1);
  }
}

@media (min-width:1800px) {
  .pp-trf-intro {
padding:
      154px
      0;
  }

  .pp-trf-intro__shell {
width:min(1660px, calc(100% - 140px));

    grid-template-columns:
      minmax(0, 650px)
      minmax(0, 1fr);

    gap:136px;
  }

  .pp-trf-intro__copy {
max-width:650px;
  }

  .pp-trf-intro__copy h2 {
max-width:680px;

    font-size:116px;
  }

  .pp-trf-intro__copy p {
max-width:650px;

    font-size:25px;
  }

  .pp-trf-intro__visual {
height:760px;
  }
}

@media (min-width:1400px) and (max-width:1799px) {
  .pp-trf-intro__shell {
width:min(1500px, calc(100% - 80px));

    grid-template-columns:
      minmax(0, 570px)
      minmax(0, 1fr);

    gap:clamp(72px, 7vw, 116px);
  }

  .pp-trf-intro__visual {
height:clamp(540px, 41vw, 700px);
  }
}

@media (min-width:1200px) and (max-width:1399px) {
  .pp-trf-intro {
padding:
      108px
      0;
  }

  .pp-trf-intro__shell {
width:calc(100% - 64px);

    grid-template-columns:
      minmax(0, .86fr)
      minmax(0, 1.14fr);

    gap:56px;
  }

  .pp-trf-intro__copy h2 {
font-size:clamp(57px, 6vw, 82px);
  }

  .pp-trf-intro__copy p {
font-size:clamp(18px, 1.5vw, 21px);
  }

  .pp-trf-intro__visual {
height:clamp(470px, 46vw, 620px);
  }
}

@media (min-width:992px) and (max-width:1199px) {
  .pp-trf-intro {
padding:
      96px
      0;
  }

  .pp-trf-intro__shell {
width:calc(100% - 52px);

    grid-template-columns:
      minmax(0, .9fr)
      minmax(0, 1.1fr);

    gap:42px;
  }

  .pp-trf-intro .pp-trf-eyebrow {
gap:15px;

    font-size:11px;
    letter-spacing:.23em;
  }

  .pp-trf-intro .pp-trf-eyebrow::before {
width:36px;
  }

  .pp-trf-intro__copy h2 {
font-size:clamp(50px, 6vw, 68px);
    line-height:.9;
    letter-spacing:-.068em;
  }

  .pp-trf-intro__copy p {
margin-top:27px;

    font-size:18px;
    line-height:1.55;
  }

  .pp-trf-intro__visual {
height:clamp(430px, 48vw, 560px);
  }
}

@media (max-width:991px) {
  .pp-trf-intro {
padding:
      88px
      0
      94px;
  }

  .pp-trf-intro__shell {
grid-template-columns:minmax(0, 1fr);

    gap:52px;

    width:calc(100% - 44px);
  }

  .pp-trf-intro__copy {
width:100%;
    max-width:760px;
  }

  .pp-trf-intro__copy h2 {
max-width:760px;

    font-size:clamp(52px, 8.5vw, 74px);
    line-height:.9;
    letter-spacing:-.07em;
  }

  .pp-trf-intro__copy p {
max-width:680px;

    font-size:18px;
  }

  .pp-trf-intro__visual {
width:100%;
    height:auto;
    min-height:440px;

    aspect-ratio:16 / 10;
  }

  .pp-trf-intro__visual img {
object-position:center center;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-trf-intro {
padding:
      74px
      0
      80px;
  }

  .pp-trf-intro::before {
background-size:
      64px 64px,
      64px 64px;

    opacity:.28;
  }

  .pp-trf-intro::after {
right:-35%;
    top:48%;

    width:100%;
    height:45%;
  }

  .pp-trf-intro__shell {
display:grid;
    grid-template-columns:minmax(0, 1fr);

    gap:42px;

    width:calc(100% - 32px);
    max-width:100%;
    min-width:0;
  }

  .pp-trf-intro__copy {
width:100%;
    max-width:100%;
    min-width:0;
  }

  .pp-trf-intro .pp-trf-eyebrow {
gap:13px;

    font-size:10.5px;
    line-height:1.25;
    letter-spacing:.2em;
  }

  .pp-trf-intro .pp-trf-eyebrow::before {
width:32px;
  }

  .pp-trf-intro__copy h2 {
width:100%;
    max-width:100%;

    margin-top:24px;

    font-size:clamp(42px, 12vw, 58px);
    line-height:.92;
    letter-spacing:-.064em;

    white-space:normal;
    word-break:normal;
    overflow-wrap:normal;
  }

  .pp-trf-intro__copy p {
width:100%;
    max-width:36rem;

    margin-top:25px;

    font-size:16.5px;
    line-height:1.55;
    letter-spacing:-.015em;
  }

  .pp-trf-intro__visual {
display:block !important;

    width:100%;
    max-width:100%;
    min-width:0;

    height:auto;
    min-height:340px;

    aspect-ratio:4 / 3;

    opacity:1 !important;
    visibility:visible !important;
  }

  .pp-trf-intro__visual img {
display:block !important;

    width:100%;
    height:100%;

    object-fit:cover;
    object-position:center;

    opacity:1 !important;
    visibility:visible !important;

    transform:none;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:575px) {
  .pp-trf-intro {
padding:
      68px
      0
      74px;
  }

  .pp-trf-intro__shell {
gap:38px;

    width:calc(100% - 26px);
  }

  .pp-trf-intro .pp-trf-eyebrow {
gap:12px;

    font-size:10px;
    letter-spacing:.185em;
  }

  .pp-trf-intro .pp-trf-eyebrow::before {
width:29px;
  }

  .pp-trf-intro__copy h2 {
margin-top:22px;

    font-size:clamp(39px, 11.8vw, 50px);
    line-height:.94;
    letter-spacing:-.058em;
  }

  .pp-trf-intro__copy p {
margin-top:23px;

    font-size:16px;
    line-height:1.53;
  }

  .pp-trf-intro__visual {
min-height:310px;

    aspect-ratio:4 / 3;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

@media (max-width:390px) {
  .pp-trf-intro {
padding:
      62px
      0
      68px;
  }

  .pp-trf-intro__shell {
gap:34px;

    width:calc(100% - 22px);
  }

  .pp-trf-intro .pp-trf-eyebrow {
gap:10px;

    font-size:9.5px;
    letter-spacing:.16em;
  }

  .pp-trf-intro .pp-trf-eyebrow::before {
width:26px;
  }

  .pp-trf-intro__copy h2 {
font-size:clamp(36px, 11.2vw, 43px);
    line-height:.95;
    letter-spacing:-.052em;
  }

  .pp-trf-intro__copy p {
font-size:15.5px;
    line-height:1.52;
  }

  .pp-trf-intro__visual {
min-height:280px;
  }
}

@media (max-width:340px) {
  .pp-trf-intro__shell {
width:calc(100% - 18px);
  }

  .pp-trf-intro .pp-trf-eyebrow {
font-size:9px;
    letter-spacing:.14em;
  }

  .pp-trf-intro__copy h2 {
font-size:34px;
  }

  .pp-trf-intro__copy p {
font-size:15px;
  }

  .pp-trf-intro__visual {
min-height:250px;
  }
}

/* ========================================================= TABLET / MOBILE HORIZONTAL ========================================================= */

@media (min-width:700px)
  and (max-width:991px)
  and (orientation:landscape) {
  .pp-trf-intro {
padding:
      72px
      0;
  }

  .pp-trf-intro__shell {
grid-template-columns:
      minmax(0, .9fr)
      minmax(0, 1.1fr);

    align-items:center;

    gap:34px;

    width:calc(100% - 48px);
  }

  .pp-trf-intro__copy h2 {
font-size:clamp(42px, 6vw, 58px);
  }

  .pp-trf-intro__copy p {
margin-top:22px;

    font-size:15.5px;
    line-height:1.48;
  }

  .pp-trf-intro__visual {
height:430px;
    min-height:0;

    aspect-ratio:auto;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-trf-intro__visual img {
transition:none !important;
  }
}

.pp-trf-types {
position:relative;
  overflow:hidden;
  background:#f4f1eb;
  color:#101010;
  padding:clamp(96px, 8vw, 156px) 0;
  border-top:1px solid rgba(16,16,16,.10);
}

.pp-trf-types::before {
content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(0,0,0,.028) 1px, transparent 1px),
    linear-gradient(180deg, rgba(0,0,0,.018) 1px, transparent 1px);
  background-size:82px 82px;
  opacity:.36;
}

.pp-trf-types__shell {
position:relative;
  z-index:2;
  width:min(1640px, calc(100% - 64px));
  margin:0 auto;
}

.pp-trf-types__head {
max-width:1060px;
  margin-bottom:clamp(64px, 6.5vw, 104px);
}

.pp-trf-types h2 {
margin:28px 0 0;
  color:#101010;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(64px, 6.8vw, 126px);
  line-height:.86;
  letter-spacing:-.08em;
  text-transform:uppercase;
  font-weight:500;
}

.pp-trf-types h2::after {
content:".";
  color:#A58667;
}

.pp-trf-types__head p {
max-width:760px;
  margin:36px 0 0;
  color:rgba(16,16,16,.72);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(21px, 1.35vw, 28px);
  line-height:1.52;
  letter-spacing:-.025em;
}

.pp-trf-types__grid {
display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:clamp(26px, 2.4vw, 42px);
}

.pp-trf-type-card {
position:relative;
  min-width:0;
  overflow:hidden;
  background:#f8f5ef;
  border:1px solid rgba(16,16,16,.10);
  min-height:clamp(720px, 48vw, 900px);
  display:grid;
  grid-template-rows:minmax(380px, 1.05fr) auto;
  transition:
    background .4s cubic-bezier(.22,1,.36,1),
    transform .4s cubic-bezier(.22,1,.36,1),
    box-shadow .4s cubic-bezier(.22,1,.36,1),
    border-color .4s cubic-bezier(.22,1,.36,1);
}

.pp-trf-type-card:hover {
background:#fff;
  transform:translateY(-8px);
  border-color:rgba(165,134,103,.28);
  box-shadow:0 30px 80px rgba(0,0,0,.08);
}

.pp-trf-type-card__gallery {
position:relative;
  min-height:clamp(380px, 30vw, 560px);
  overflow:hidden;
  background:#070707;
}

.pp-trf-type-card__slides {
position:absolute;
  inset:0;
}

.pp-trf-type-card__slides img {
position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:0;
  transform:scale(1.035);
  filter:saturate(.88) contrast(1.08) brightness(.82);
  transition:
    opacity .55s cubic-bezier(.22,1,.36,1),
    transform .85s cubic-bezier(.22,1,.36,1),
    filter .55s cubic-bezier(.22,1,.36,1);
}

.pp-trf-type-card__slides img.is-active {
opacity:1;
  transform:scale(1);
}

.pp-trf-type-card:hover .pp-trf-type-card__slides img.is-active {
filter:saturate(.96) contrast(1.06) brightness(.94);
}

/* NAV SETAS */

.pp-trf-type-card__nav {
position:absolute;
  top:50%;
  z-index:4;
  width:52px;
  height:52px;
  transform:translateY(-50%);
  border:1px solid rgba(255,255,255,.26);
  border-radius:999px;
  background:rgba(0,0,0,.36);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  visibility:hidden;
  transition:
    opacity .35s cubic-bezier(.22,1,.36,1),
    visibility .35s cubic-bezier(.22,1,.36,1),
    background .35s cubic-bezier(.22,1,.36,1),
    border-color .35s cubic-bezier(.22,1,.36,1),
    transform .35s cubic-bezier(.22,1,.36,1);
}

.pp-trf-type-card:hover .pp-trf-type-card__nav {
opacity:1;
  visibility:visible;
}

.pp-trf-type-card__nav--prev {
left:22px;
}

.pp-trf-type-card__nav--next {
right:22px;
}

.pp-trf-type-card__nav::before {
content:"";
  width:12px;
  height:12px;
  border-top:2px solid #fff;
  border-right:2px solid #fff;
}

.pp-trf-type-card__nav--prev::before {
transform:rotate(-135deg) translate(-1px, -1px);
}

.pp-trf-type-card__nav--next::before {
transform:rotate(45deg) translate(-1px, 1px);
}

.pp-trf-type-card__nav:hover {
background:#A58667;
  border-color:#A58667;
}

.pp-trf-type-card__nav--prev:hover {
transform:translateY(-50%) translateX(-3px);
}

.pp-trf-type-card__nav--next:hover {
transform:translateY(-50%) translateX(3px);
}

.pp-trf-type-card__dots {
position:absolute;
  left:clamp(26px, 2.4vw, 42px);
  bottom:clamp(22px, 2vw, 34px);
  z-index:5;
  display:flex;
  align-items:center;
  gap:10px;
}

.pp-trf-type-card__dots button {
width:34px;
  height:3px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.34);
  transition:
    width .35s cubic-bezier(.22,1,.36,1),
    background .35s cubic-bezier(.22,1,.36,1);
}

.pp-trf-type-card__dots button.is-active {
width:54px;
  background:#A58667;
}

.pp-trf-type-card__content {
padding:clamp(36px, 3.2vw, 58px);
}

.pp-trf-type-card__content > span {
display:block;
  margin-bottom:30px;
  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:15px;
  line-height:1;
  letter-spacing:.18em;
}

.pp-trf-type-card__content h3 {
max-width:680px;
  margin:0 0 24px;
  color:#101010;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(44px, 4vw, 76px);
  line-height:.88;
  letter-spacing:-.078em;
  text-transform:uppercase;
}

.pp-trf-type-card__content p {
max-width:620px;
  margin:0 0 34px;
  color:rgba(16,16,16,.68);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(19px, 1.18vw, 24px);
  line-height:1.48;
  letter-spacing:-.022em;
}

.pp-trf-type-card__content ul {
display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0;
  padding:0;
}

.pp-trf-type-card__content li {
min-height:38px;
  padding:0 15px;
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(165,134,103,.34);
  border-radius:999px;
  color:#A58667;
  background:rgba(165,134,103,.045);
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:14px;
  line-height:1;
  letter-spacing:.02em;
}

@media (max-width:1199px) {
  .pp-trf-types__grid {
grid-template-columns:1fr;
  }

  .pp-trf-type-card {
min-height:auto;
  }

  .pp-trf-type-card__gallery {
min-height:clamp(420px, 52vw, 620px);
  }
}

@media (max-width:767px) {
  .pp-trf-types {
padding:78px 0;
  }

  .pp-trf-types__shell {
width:calc(100% - 28px);
  }

  .pp-trf-types h2 {
font-size:clamp(44px, 13vw, 64px);
    line-height:.9;
  }

  .pp-trf-types__head p {
font-size:18px;
  }

  .pp-trf-type-card__gallery {
min-height:360px;
  }

  .pp-trf-type-card__content {
padding:30px 24px 34px;
  }

  .pp-trf-type-card__content h3 {
font-size:clamp(38px, 11vw, 54px);
  }

  .pp-trf-type-card__content p {
font-size:18px;
  }

  .pp-trf-type-card__nav {
opacity:1;
    visibility:visible;
    width:46px;
    height:46px;
  }

  .pp-trf-type-card__nav--prev {
left:14px;
  }

  .pp-trf-type-card__nav--next {
right:14px;
  }

  .pp-trf-type-card__dots {
left:24px;
    bottom:20px;
  }

  .pp-trf-type-card__dots button {
width:28px;
  }

  .pp-trf-type-card__dots button.is-active {
width:44px;
  }
}

@media (max-width:420px) {
  .pp-trf-type-card__gallery {
min-height:310px;
  }

  .pp-trf-type-card__content h3 {
font-size:36px;
  }

  .pp-trf-type-card__content li {
font-size:13px;
  }
}

/* ========================================================= TRANSFERS — SEGMENTS / DARK LEFT + IMAGE GRID Fotos mais visíveis / menos escuras ========================================================= */

.pp-trf-segments {
position:relative;
  overflow:hidden;
  background:#050505;
  color:#fff;
  padding:0;
}

.pp-trf-segments::before {
content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(255,255,255,.024) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size:82px 82px;
  opacity:.22;
}

.pp-trf-segments__shell {
position:relative;
  z-index:2;
  width:100%;
  min-height:clamp(760px, 58vw, 980px);
  display:grid;
  grid-template-columns:42% 58%;
  background:#050505;
}

.pp-trf-segments__content {
position:relative;
  min-width:0;
  padding:
    clamp(92px, 7vw, 140px)
    clamp(36px, 5vw, 96px);

  display:flex;
  flex-direction:column;
  justify-content:center;

  background:
    radial-gradient(circle at 14% 18%, rgba(165,134,103,.13), transparent 28%),
    linear-gradient(180deg, #050505 0%, #020202 100%);
  color:#fff;
}

.pp-trf-segments__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;
  width:max-content;
  margin-bottom:42px;

  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:12px;
  line-height:1;
  letter-spacing:.30em;
  text-transform:uppercase;
}

.pp-trf-segments__eyebrow::before {
content:"";
  width:42px;
  height:1px;
  background:#A58667;
}

.pp-trf-segments h2 {
max-width:760px;
  margin:0;

  color:#fff;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(56px, 5.1vw, 104px);
  line-height:.88;
  letter-spacing:-.085em;
  text-transform:uppercase;
  font-weight:500;
}

.pp-trf-segments h2::after {
content:".";
  color:#A58667;
}

.pp-trf-segments__content p {
max-width:680px;
  margin:44px 0 0;

  color:rgba(255,255,255,.76);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(20px, 1.18vw, 26px);
  line-height:1.55;
  letter-spacing:-.025em;
}

.pp-trf-segments__grid {
min-width:0;
  min-height:inherit;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  grid-template-rows:repeat(2, minmax(0, 1fr));
  background:#050505;
}

.pp-trf-segments__card {
position:relative;
  min-height:380px;
  overflow:hidden;
  background:#050505;
  border-left:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(255,255,255,.16);
}

.pp-trf-segments__card:nth-child(1),
.pp-trf-segments__card:nth-child(3) {
border-left:0;
}

.pp-trf-segments__card img {
position:absolute;
  inset:0;

  width:100%;
  height:100%;
  display:block;

  object-fit:cover;
  object-position:center;

  opacity:1;

  /* ALTERADO: antes estava muito escuro */
  filter:saturate(.92) contrast(1.08) brightness(.88);
  transform:scale(1.02);

  transition:
    transform .75s cubic-bezier(.22,1,.36,1),
    filter .75s cubic-bezier(.22,1,.36,1);
}

.pp-trf-segments__card:hover img {
transform:scale(1.075);

  /* hover ainda mais visível */
  filter:saturate(1) contrast(1.08) brightness(1);
}

.pp-trf-segments__card-overlay {
position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;

  /* ALTERADO: menos preto por cima da imagem */
  background:
    linear-gradient(
      180deg,
      rgba(5,5,5,.04) 0%,
      rgba(5,5,5,.16) 42%,
      rgba(5,5,5,.70) 100%
    ),
    linear-gradient(
      90deg,
      rgba(5,5,5,.18) 0%,
      rgba(5,5,5,.02) 100%
    );
}

.pp-trf-segments__card:hover .pp-trf-segments__card-overlay {
background:
    linear-gradient(
      180deg,
      rgba(5,5,5,.02) 0%,
      rgba(5,5,5,.10) 42%,
      rgba(5,5,5,.62) 100%
    ),
    linear-gradient(
      90deg,
      rgba(5,5,5,.12) 0%,
      rgba(5,5,5,0) 100%
    );
}

.pp-trf-segments__card-content {
position:absolute;
  left:clamp(28px, 3vw, 58px);
  right:clamp(26px, 2.6vw, 52px);
  bottom:clamp(30px, 3.2vw, 62px);
  z-index:2;
}

.pp-trf-segments__card-content span {
display:inline-flex;
  align-items:center;
  gap:14px;
  margin-bottom:24px;

  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:16px;
  line-height:1;
  letter-spacing:.16em;
}

.pp-trf-segments__card-content span::after {
content:"";
  width:46px;
  height:1px;
  background:#A58667;
}

.pp-trf-segments__card-content h3 {
margin:0 0 20px;

  color:#fff;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(34px, 2.8vw, 56px);
  line-height:.9;
  letter-spacing:-.075em;
  text-transform:uppercase;
  font-weight:500;

  text-shadow:0 8px 26px rgba(0,0,0,.36);
}

.pp-trf-segments__card-content p {
max-width:440px;
  margin:0;

  color:rgba(255,255,255,.86);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(17px, 1.05vw, 22px);
  line-height:1.5;
  letter-spacing:-.02em;

  text-shadow:0 8px 24px rgba(0,0,0,.36);
}

.pp-trf-segments__card-content::after {
content:"→";
  display:block;
  margin-top:30px;

  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:28px;
  line-height:1;

  transform:translateX(0);
  opacity:.95;

  transition:
    transform .35s cubic-bezier(.22,1,.36,1),
    opacity .35s cubic-bezier(.22,1,.36,1);
}

.pp-trf-segments__card:hover .pp-trf-segments__card-content::after {
transform:translateX(8px);
  opacity:1;
}

@media (max-width:1440px) {
  .pp-trf-segments__shell {
grid-template-columns:44% 56%;
  }

  .pp-trf-segments__content {
padding:
      clamp(86px, 7vw, 120px)
      clamp(30px, 4vw, 70px);
  }

  .pp-trf-segments h2 {
font-size:clamp(52px, 5.2vw, 88px);
  }

  .pp-trf-segments__content p {
font-size:clamp(19px, 1.2vw, 23px);
  }
}

@media (max-width:1199px) {
  .pp-trf-segments__shell {
grid-template-columns:1fr;
    min-height:auto;
  }

  .pp-trf-segments__content {
padding:
      clamp(82px, 9vw, 120px)
      clamp(24px, 5vw, 64px);
  }

  .pp-trf-segments h2 {
max-width:920px;
    font-size:clamp(58px, 10vw, 104px);
  }

  .pp-trf-segments__content p {
max-width:780px;
  }

  .pp-trf-segments__grid {
min-height:760px;
  }

  .pp-trf-segments__card:nth-child(1),
  .pp-trf-segments__card:nth-child(3) {
border-left:0;
  }
}

/* ========================================================= RESPONSIVE — MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-trf-segments__content {
padding:78px 22px 64px;
  }

  .pp-trf-segments__eyebrow {
font-size:11px;
    letter-spacing:.22em;
    margin-bottom:28px;
  }

  .pp-trf-segments__eyebrow::before {
width:30px;
  }

  .pp-trf-segments h2 {
font-size:clamp(44px, 13vw, 64px);
    line-height:.9;
    letter-spacing:-.07em;
  }

  .pp-trf-segments__content p {
margin-top:30px;
    font-size:18px;
    line-height:1.52;
  }

  .pp-trf-segments__grid {
grid-template-columns:1fr;
    grid-template-rows:none;
    min-height:auto;
  }

  .pp-trf-segments__card {
min-height:430px;
    border-left:0;
    border-bottom:1px solid rgba(255,255,255,.16);
  }

  .pp-trf-segments__card-content {
left:24px;
    right:24px;
    bottom:34px;
  }

  .pp-trf-segments__card-content h3 {
font-size:clamp(36px, 11vw, 52px);
  }

  .pp-trf-segments__card-content p {
font-size:17px;
  }
}

/* ========================================================= RESPONSIVE — SMALL MOBILE ========================================================= */

@media (max-width:420px) {
  .pp-trf-segments__content {
padding:70px 18px 56px;
  }

  .pp-trf-segments h2 {
font-size:40px;
  }

  .pp-trf-segments__content p {
font-size:17px;
  }

  .pp-trf-segments__card {
min-height:380px;
  }

  .pp-trf-segments__card-content h3 {
font-size:34px;
  }

  .pp-trf-segments__card-content p {
font-size:16px;
  }
}

/* ========================================================= TRANSFERS — O NOSSO PROCESSO RESPONSIVE DESKTOP / TABLET / MOBILE ========================================================= */

.pp-trf-process {
--pp-process-bg:#f4f1eb;
  --pp-process-text:#101010;
  --pp-process-muted:rgba(16,16,16,.66);
  --pp-process-accent:#A58667;
  --pp-process-line:rgba(16,16,16,.16);

  position:relative;
  isolation:isolate;

  display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0;

  padding:
    clamp(92px, 7.5vw, 138px)
    0
    clamp(100px, 8vw, 150px);

  overflow:clip;

  background:var(--pp-process-bg);
  color:var(--pp-process-text);
}

@supports not (overflow:clip) {
  .pp-trf-process {
overflow:hidden;
  }
}

.pp-trf-process *,
.pp-trf-process *::before,
.pp-trf-process *::after {
box-sizing:border-box;
}

.pp-trf-process::before {
content:"";

  position:absolute;
  inset:0;
  z-index:0;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,.024) 1px,
      transparent 1px
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,.017) 1px,
      transparent 1px
    );

  background-size:
    82px 82px,
    82px 82px;

  opacity:.34;
}

.pp-trf-process::after {
content:"";

  position:absolute;
  right:-12%;
  top:-18%;
  z-index:0;

  width:54%;
  height:70%;

  pointer-events:none;

  background:
    radial-gradient(
      circle at center,
      rgba(165,134,103,.10),
      transparent 68%
    );

  opacity:.7;
}

.pp-trf-process__shell {
position:relative;
  z-index:2;

  display:block;

  width:min(
    1540px,
    calc(100% - clamp(48px, 5vw, 96px))
  );

  max-width:100%;
  min-width:0;

  margin:0 auto;
  padding:0;
}

.pp-trf-process__head {
display:grid;

  grid-template-columns:
    minmax(0, 1.12fr)
    minmax(340px, .68fr);

  grid-template-areas:
    "eyebrow eyebrow"
    "title description";

  align-items:end;

  column-gap:clamp(56px, 8vw, 140px);
  row-gap:clamp(26px, 2.5vw, 38px);

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0 0 clamp(62px, 6vw, 96px);
  padding:0;
}

.pp-trf-process__head .pp-trf-eyebrow {
grid-area:eyebrow;

  display:inline-flex;
  align-items:center;
  gap:18px;

  width:max-content;
  max-width:100%;
  min-width:0;

  margin:0;
  padding:0;

  color:var(--pp-process-accent);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1.2;
  font-weight:500;
  letter-spacing:.28em;
  text-transform:uppercase;

  white-space:normal;
}

.pp-trf-process__head .pp-trf-eyebrow::before {
content:"";

  display:block;
  flex:0 0 auto;

  width:42px;
  height:1px;

  background:var(--pp-process-accent);
}

.pp-trf-process__head h2 {
grid-area:title;

  display:block;

  width:100%;
  max-width:950px;
  min-width:0;

  margin:0;
  padding:0;

  color:var(--pp-process-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(58px, 6vw, 112px);
  line-height:.88;
  font-weight:500;
  letter-spacing:-.076em;
  text-transform:uppercase;

  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;
  text-wrap:balance;
}

.pp-trf-process__head h2::after {
content:none !important;
  display:none !important;
}

.pp-trf-process__head > p {
grid-area:description;

  display:block;

  width:100%;
  max-width:620px;
  min-width:0;

  margin:0;
  padding:0 0 5px;

  color:var(--pp-process-muted);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(18px, 1.22vw, 23px);
  line-height:1.56;
  font-weight:400;
  letter-spacing:-.02em;

  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;
}

.pp-trf-process__line {
position:relative;

  display:grid;

  grid-template-columns:
    repeat(5, minmax(0, 1fr));

  column-gap:clamp(22px, 2vw, 40px);

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0;
  padding:0;

  border-top:1px solid var(--pp-process-line);
}

.pp-trf-process__line article {
position:relative;

  display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0;
  padding:
    clamp(30px, 2.5vw, 40px)
    clamp(8px, 1vw, 18px)
    0
    0;

  border:0;

  color:var(--pp-process-text);
}

.pp-trf-process__line article::before {
content:"";

  position:absolute;
  top:-1px;
  left:0;

  display:block;

  width:clamp(42px, 3vw, 56px);
  height:1px;

  background:var(--pp-process-accent);
}

.pp-trf-process__line article::after {
content:none !important;
  display:none !important;
}

.pp-trf-process__line article > span {
display:block;

  width:auto;
  max-width:100%;

  margin:0 0 clamp(16px, 1.4vw, 22px);
  padding:0;

  color:var(--pp-process-accent);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:14px;
  line-height:1;
  font-weight:500;
  letter-spacing:.14em;
}

.pp-trf-process__line article > h3 {
display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0 0 14px;
  padding:0;

  color:var(--pp-process-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(24px, 1.7vw, 34px);
  line-height:1;
  font-weight:500;
  letter-spacing:-.045em;
  text-transform:uppercase;

  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;
}

.pp-trf-process__line article > p {
display:block;

  width:100%;
  max-width:270px;
  min-width:0;

  margin:0;
  padding:0;

  color:var(--pp-process-muted);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(15.5px, 1vw, 18px);
  line-height:1.55;
  font-weight:400;
  letter-spacing:-.012em;

  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;
  hyphens:none;
}

.pp-trf-process__head.reveal-up.is-visible,
.pp-trf-process__line article.reveal-up.is-visible {
visibility:visible;
}

@media (min-width:1800px) {
  .pp-trf-process {
padding:
      152px
      0
      164px;
  }

  .pp-trf-process__shell {
width:min(1660px, calc(100% - 140px));
  }

  .pp-trf-process__head {
grid-template-columns:
      minmax(0, 1.2fr)
      minmax(390px, .65fr);

    column-gap:150px;

    margin-bottom:104px;
  }

  .pp-trf-process__head h2 {
max-width:1000px;

    font-size:118px;
  }

  .pp-trf-process__head > p {
max-width:650px;

    font-size:24px;
  }

  .pp-trf-process__line {
column-gap:42px;
  }

  .pp-trf-process__line article > h3 {
font-size:36px;
  }

  .pp-trf-process__line article > p {
max-width:290px;

    font-size:19px;
  }
}

@media (min-width:1400px) and (max-width:1799px) {
  .pp-trf-process__shell {
width:min(1500px, calc(100% - 80px));
  }

  .pp-trf-process__head {
grid-template-columns:
      minmax(0, 1.08fr)
      minmax(360px, .65fr);

    column-gap:clamp(80px, 8vw, 130px);
  }

  .pp-trf-process__line {
column-gap:clamp(24px, 2vw, 36px);
  }
}

@media (min-width:1200px) and (max-width:1399px) {
  .pp-trf-process {
padding:
      106px
      0
      118px;
  }

  .pp-trf-process__shell {
width:calc(100% - 64px);
  }

  .pp-trf-process__head {
grid-template-columns:
      minmax(0, 1fr)
      minmax(320px, .72fr);

    column-gap:58px;

    margin-bottom:70px;
  }

  .pp-trf-process__head h2 {
font-size:clamp(62px, 6.3vw, 86px);
  }

  .pp-trf-process__head > p {
font-size:18px;
  }

  .pp-trf-process__line {
column-gap:20px;
  }

  .pp-trf-process__line article {
padding-right:8px;
  }

  .pp-trf-process__line article > h3 {
font-size:clamp(23px, 1.8vw, 29px);
  }

  .pp-trf-process__line article > p {
font-size:15.5px;
    line-height:1.5;
  }
}

@media (min-width:992px) and (max-width:1199px) {
  .pp-trf-process {
padding:
      96px
      0
      110px;
  }

  .pp-trf-process__shell {
width:calc(100% - 54px);
  }

  .pp-trf-process__head {
grid-template-columns:
      minmax(0, 1fr)
      minmax(290px, .75fr);

    column-gap:44px;
    row-gap:26px;

    margin-bottom:64px;
  }

  .pp-trf-process__head h2 {
font-size:clamp(56px, 6.8vw, 76px);
    line-height:.9;
  }

  .pp-trf-process__head > p {
font-size:17.5px;
    line-height:1.52;
  }

  .pp-trf-process__line {
grid-template-columns:
      repeat(2, minmax(0, 1fr));

    column-gap:42px;
    row-gap:0;

    border-top:0;
  }

  .pp-trf-process__line article {
padding:
      30px
      16px
      34px
      0;

    border-top:1px solid var(--pp-process-line);
  }

  .pp-trf-process__line article > h3 {
font-size:30px;
  }

  .pp-trf-process__line article > p {
max-width:390px;

    font-size:17px;
  }
}

@media (min-width:768px) and (max-width:991px) {
  .pp-trf-process {
padding:
      88px
      0
      100px;
  }

  .pp-trf-process__shell {
width:calc(100% - 44px);
  }

  .pp-trf-process__head {
grid-template-columns:minmax(0, 1fr);

    grid-template-areas:
      "eyebrow"
      "title"
      "description";

    row-gap:24px;

    margin-bottom:58px;
  }

  .pp-trf-process__head h2 {
max-width:760px;

    font-size:clamp(54px, 9vw, 76px);
    line-height:.9;
  }

  .pp-trf-process__head > p {
max-width:650px;

    padding:0;

    font-size:18px;
  }

  .pp-trf-process__line {
grid-template-columns:
      repeat(2, minmax(0, 1fr));

    column-gap:34px;
    row-gap:0;

    border-top:0;
  }

  .pp-trf-process__line article {
padding:
      28px
      10px
      32px
      0;

    border-top:1px solid var(--pp-process-line);
  }

  .pp-trf-process__line article > h3 {
font-size:28px;
  }

  .pp-trf-process__line article > p {
max-width:340px;

    font-size:16.5px;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-trf-process {
padding:
      76px
      0
      86px;
  }

  .pp-trf-process::before {
background-size:
      64px 64px,
      64px 64px;

    opacity:.26;
  }

  .pp-trf-process::after {
right:-50%;
    top:-8%;

    width:130%;
    height:38%;
  }

  .pp-trf-process__shell {
width:calc(100% - 32px);
  }

  .pp-trf-process__head {
display:grid;

    grid-template-columns:minmax(0, 1fr);

    grid-template-areas:
      "eyebrow"
      "title"
      "description";

    column-gap:0;
    row-gap:22px;

    width:100%;

    margin-bottom:48px;
  }

  .pp-trf-process__head .pp-trf-eyebrow {
gap:13px;

    width:auto;
    max-width:100%;

    font-size:10.5px;
    line-height:1.25;
    letter-spacing:.2em;
  }

  .pp-trf-process__head .pp-trf-eyebrow::before {
width:32px;
  }

  .pp-trf-process__head h2 {
width:100%;
    max-width:100%;

    font-size:clamp(44px, 12.2vw, 62px);
    line-height:.92;
    letter-spacing:-.064em;

    text-wrap:balance;
  }

  .pp-trf-process__head > p {
width:100%;
    max-width:38rem;

    padding:0;

    font-size:16.5px;
    line-height:1.54;
    letter-spacing:-.015em;
  }

  .pp-trf-process__line {
display:grid;

    grid-template-columns:minmax(0, 1fr);

    row-gap:0;

    width:100%;

    border-top:0;
  }

  .pp-trf-process__line article {
display:grid;

    grid-template-columns:
      50px
      minmax(0, 1fr);

    grid-template-rows:
      auto
      auto;

    column-gap:16px;
    row-gap:9px;

    align-items:start;

    width:100%;
    min-width:0;

    padding:
      25px
      0
      28px;

    border-top:1px solid var(--pp-process-line);
  }

  .pp-trf-process__line article::before {
top:-1px;
    left:0;

    width:40px;
  }

  .pp-trf-process__line article > span {
grid-column:1;
    grid-row:1 / 3;

    align-self:start;

    margin:4px 0 0;

    font-size:12px;
    line-height:1;
    letter-spacing:.13em;
  }

  .pp-trf-process__line article > h3 {
grid-column:2;
    grid-row:1;

    width:100%;
    max-width:100%;
    min-width:0;

    margin:0;

    font-size:clamp(25px, 7.4vw, 32px);
    line-height:1;
    letter-spacing:-.045em;

    word-break:normal;
    overflow-wrap:break-word;
  }

  .pp-trf-process__line article > p {
grid-column:2;
    grid-row:2;

    width:100%;
    max-width:34rem;
    min-width:0;

    margin:0;

    font-size:16px;
    line-height:1.5;
    letter-spacing:-.01em;

    word-break:normal;
    overflow-wrap:break-word;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:575px) {
  .pp-trf-process {
padding:
      70px
      0
      80px;
  }

  .pp-trf-process__shell {
width:calc(100% - 26px);
  }

  .pp-trf-process__head {
row-gap:20px;

    margin-bottom:43px;
  }

  .pp-trf-process__head .pp-trf-eyebrow {
gap:11px;

    font-size:10px;
    letter-spacing:.18em;
  }

  .pp-trf-process__head .pp-trf-eyebrow::before {
width:28px;
  }

  .pp-trf-process__head h2 {
font-size:clamp(40px, 11.8vw, 52px);
    line-height:.94;
    letter-spacing:-.058em;
  }

  .pp-trf-process__head > p {
font-size:16px;
    line-height:1.52;
  }

  .pp-trf-process__line article {
grid-template-columns:
      46px
      minmax(0, 1fr);

    column-gap:13px;

    padding:
      23px
      0
      26px;
  }

  .pp-trf-process__line article > h3 {
font-size:clamp(24px, 7vw, 29px);
  }

  .pp-trf-process__line article > p {
font-size:15.5px;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

@media (max-width:390px) {
  .pp-trf-process {
padding:
      64px
      0
      72px;
  }

  .pp-trf-process__shell {
width:calc(100% - 22px);
  }

  .pp-trf-process__head .pp-trf-eyebrow {
font-size:9.5px;
    letter-spacing:.15em;
  }

  .pp-trf-process__head h2 {
font-size:clamp(36px, 11.3vw, 44px);
    line-height:.95;
    letter-spacing:-.052em;
  }

  .pp-trf-process__head > p {
font-size:15.5px;
  }

  .pp-trf-process__line article {
grid-template-columns:
      42px
      minmax(0, 1fr);

    column-gap:11px;

    padding:
      21px
      0
      24px;
  }

  .pp-trf-process__line article > span {
font-size:11px;
  }

  .pp-trf-process__line article > h3 {
font-size:23px;
  }

  .pp-trf-process__line article > p {
font-size:15px;
    line-height:1.48;
  }
}

@media (max-width:340px) {
  .pp-trf-process__shell {
width:calc(100% - 18px);
  }

  .pp-trf-process__head h2 {
font-size:34px;
  }

  .pp-trf-process__head > p {
font-size:15px;
  }

  .pp-trf-process__line article {
grid-template-columns:
      38px
      minmax(0, 1fr);

    column-gap:9px;
  }

  .pp-trf-process__line article > h3 {
font-size:21px;
  }

  .pp-trf-process__line article > p {
font-size:14.5px;
  }
}

/* ========================================================= MOBILE / TABLET HORIZONTAL ========================================================= */

@media (max-width:900px)
  and (orientation:landscape) {
  .pp-trf-process {
padding:
      66px
      0
      76px;
  }

  .pp-trf-process__shell {
width:calc(100% - 40px);
  }

  .pp-trf-process__head {
grid-template-columns:
      minmax(0, 1fr)
      minmax(260px, .8fr);

    grid-template-areas:
      "eyebrow eyebrow"
      "title description";

    column-gap:36px;
    row-gap:20px;

    margin-bottom:46px;
  }

  .pp-trf-process__head h2 {
font-size:clamp(44px, 7vw, 60px);
  }

  .pp-trf-process__head > p {
font-size:15.5px;
  }

  .pp-trf-process__line {
grid-template-columns:
      repeat(2, minmax(0, 1fr));

    column-gap:30px;
  }

  .pp-trf-process__line article {
display:block;

    padding:
      25px
      8px
      28px
      0;
  }

  .pp-trf-process__line article > span {
display:block;

    margin:0 0 14px;
  }

  .pp-trf-process__line article > h3 {
margin:0 0 11px;

    font-size:26px;
  }

  .pp-trf-process__line article > p {
max-width:350px;

    font-size:15px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-trf-process__head,
  .pp-trf-process__line article {
transition:none !important;
  }
}

/* ========================================================= CORTE LASER — DESIGN SYSTEM NOVO Sem overrides de classes antigas ========================================================= */

.pp-laser-intro,
.pp-laser-capabilities,
.pp-laser-process {
--laser-bg:#f4f1eb;
  --laser-black:#050505;
  --laser-text:#101010;
  --laser-muted:rgba(16,16,16,.68);
  --laser-white:#fff;
  --laser-accent:#A58667;

  font-family:"URWGeometricMedium", "Figtree", sans-serif;
}

.pp-laser-eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;
  width:max-content;
  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:12px;
  line-height:1;
  letter-spacing:.28em;
  text-transform:uppercase;
}

.pp-laser-eyebrow::before {
content:"";
  width:42px;
  height:1px;
  background:#A58667;
}

/* ========================================================= 1. HERO ========================================================= */

.pp-laser-intro {
position:relative;
  overflow:hidden;
  background:#f4f1eb;
  color:#101010;
  padding:clamp(92px, 8vw, 150px) 0;
}

.pp-laser-intro::before {
content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(0,0,0,.028) 1px, transparent 1px),
    linear-gradient(180deg, rgba(0,0,0,.018) 1px, transparent 1px);
  background-size:82px 82px;
  opacity:.36;
}

.pp-laser-intro__shell {
position:relative;
  z-index:2;
  width:min(1540px, calc(100% - 64px));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0, 600px) minmax(0, 1fr);
  gap:clamp(54px, 8vw, 130px);
  align-items:center;
}

.pp-laser-intro h2 {
margin:28px 0 0;
  color:#101010;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(58px, 6.4vw, 118px);
  line-height:.86;
  letter-spacing:-.08em;
  text-transform:uppercase;
  font-weight:500;
}

.pp-laser-intro h2::after {
content:".";
  color:#A58667;
}

.pp-laser-intro p {
max-width:700px;
  margin:34px 0 0;
  color:rgba(16,16,16,.72);
  font-size:clamp(20px, 1.28vw, 26px);
  line-height:1.55;
  letter-spacing:-.025em;
}

.pp-laser-intro__visual {
position:relative;
  height:clamp(460px, 40vw, 720px);
  overflow:hidden;
  background:#d9d4cd;
}

.pp-laser-intro__visual img {
width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(1.02) contrast(1.02) brightness(1.10);
  transform:scale(1.02);
}

.pp-laser-intro__visual::after {
display:none;
}

@media (max-width:1199px) {
  .pp-laser-intro__shell {
grid-template-columns:1fr;
  }
}

@media (max-width:767px) {
  .pp-laser-intro {
padding:78px 0;
  }

  .pp-laser-intro__shell {
width:calc(100% - 28px);
  }

  .pp-laser-intro h2 {
font-size:clamp(44px, 13vw, 64px);
    line-height:.9;
  }

  .pp-laser-intro p {
font-size:18px;
  }

  .pp-laser-intro__visual {
height:390px;
  }
}

/* ========================================================= CORTE LASER — PRECISION / CLEAN DARK + FULL IMAGE GRID Texto em cima + features + galeria clara em baixo ========================================================= */

.pp-laser-precision {
--laser-bg:#030303;
  --laser-card:#050505;
  --laser-text:#fff;
  --laser-muted:rgba(255,255,255,.72);
  --laser-soft:rgba(255,255,255,.48);
  --laser-line:rgba(255,255,255,.14);
  --laser-accent:#A58667;

  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background:#030303;
  color:#fff;
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
}

.pp-laser-precision::before {
content:"";
  position:absolute;
  inset:0;
  z-index:-3;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 16%, rgba(165,134,103,.10), transparent 24%),
    radial-gradient(circle at 80% 18%, rgba(255,255,255,.025), transparent 32%),
    linear-gradient(180deg, #020202 0%, #040404 100%);
}

.pp-laser-precision::after {
content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:none;
}

.pp-laser-precision__intro {
position:relative;
  padding:clamp(100px, 8vw, 160px) 0 clamp(72px, 6vw, 112px);
  background:#030303;
}

.pp-laser-precision__inner {
width:min(1540px, calc(100% - 64px));
  margin:0 auto;
}

.pp-laser-precision__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;
  width:max-content;
  margin-bottom:34px;

  color:var(--laser-accent);
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:12px;
  line-height:1;
  letter-spacing:.30em;
  text-transform:uppercase;
}

.pp-laser-precision__eyebrow::before {
content:"";
  width:42px;
  height:1px;
  background:var(--laser-accent);
}

.pp-laser-precision h2 {
max-width:1120px;
  margin:0;

  color:#fff;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(64px, 6.8vw, 132px);
  line-height:.86;
  letter-spacing:-.085em;
  text-transform:uppercase;
  font-weight:500;
}

.pp-laser-precision h2::after {
content:".";
  color:var(--laser-accent);
}

.pp-laser-precision__intro p {
max-width:780px;
  margin:38px 0 0;

  color:var(--laser-muted);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(20px, 1.24vw, 27px);
  line-height:1.55;
  letter-spacing:-.025em;
}

.pp-laser-precision__divider {
display:none;
}

.pp-laser-precision__features {
display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:clamp(28px, 2.5vw, 52px);
  max-width:1500px;
  margin:clamp(78px, 6vw, 108px) auto 0;
  align-items:start;
}

.pp-laser-precision__features article {
position:relative;
  min-width:0;
  padding:18px clamp(18px, 2vw, 38px) 8px;

  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;

  border-left:none;

  transition:
    transform .42s cubic-bezier(.22,1,.36,1),
    opacity .42s cubic-bezier(.22,1,.36,1);
}

.pp-laser-precision__features article:not(:first-child) {
border-left:none;
}

.pp-laser-precision__features article:hover {
transform:translateY(-10px);
}

.pp-laser-precision__features article:hover .pp-laser-precision__icon {
transform:scale(1.18);
  color:#fff;
}

.pp-laser-precision__features article:hover h3 {
color:var(--laser-accent);
}

.pp-laser-precision__features h3 {
margin:30px 0 16px;

  color:#fff;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(18px, 1.12vw, 23px);
  line-height:1.1;
  letter-spacing:.08em;
  text-transform:uppercase;

  transition:color .35s cubic-bezier(.22,1,.36,1);
}

.pp-laser-precision__features p {
max-width:320px;
  margin:0 auto;

  color:rgba(255,255,255,.74);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(17px, 1.08vw, 21px);
  line-height:1.58;
  letter-spacing:-.015em;
}

.pp-laser-precision__icon {
position:relative;
  display:block;
  width:76px;
  height:76px;
  color:var(--laser-accent);
  margin-bottom:2px;

  transition:
    transform .42s cubic-bezier(.22,1,.36,1),
    color .42s cubic-bezier(.22,1,.36,1);
}

.pp-laser-precision__icon--target::before {
content:"";
  position:absolute;
  inset:10px;
  border:1.5px solid currentColor;
  border-radius:999px;
}

.pp-laser-precision__icon--target::after {
content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:12px;
  height:12px;
  border-radius:999px;
  border:1.5px solid currentColor;
  transform:translate(-50%, -50%);
  box-shadow:
    0 -29px 0 -5px currentColor,
    0 29px 0 -5px currentColor,
    -29px 0 0 -5px currentColor,
    29px 0 0 -5px currentColor;
}

.pp-laser-precision__icon--layers::before,
.pp-laser-precision__icon--layers::after {
content:"";
  position:absolute;
  left:16px;
  right:16px;
  height:18px;
  border:1.5px solid currentColor;
  transform:skewY(-24deg);
}

.pp-laser-precision__icon--layers::before {
top:16px;
}

.pp-laser-precision__icon--layers::after {
bottom:16px;
}

.pp-laser-precision__icon--speed::before {
content:"";
  position:absolute;
  inset:14px;
  border:1.5px solid currentColor;
  border-bottom-color:transparent;
  border-radius:999px;
}

.pp-laser-precision__icon--speed::after {
content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:26px;
  height:1.5px;
  background:currentColor;
  transform-origin:left center;
  transform:rotate(-42deg);
}

/* laser */

.pp-laser-precision__icon--laser::before {
content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:54px;
  height:1.5px;
  background:currentColor;
  transform:translate(-50%, -50%);
  box-shadow:
    0 -17px 0 rgba(165,134,103,.55),
    0 17px 0 rgba(165,134,103,.55);
}

.pp-laser-precision__icon--laser::after {
content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:1.5px;
  height:54px;
  background:currentColor;
  transform:translate(-50%, -50%);
  box-shadow:
    -17px 0 0 rgba(165,134,103,.55),
    17px 0 0 rgba(165,134,103,.55);
}

.pp-laser-precision__gallery {
position:relative;
  padding:0;
  background:#030303;
}

.pp-laser-precision__gallery-inner {
width:100%;
  margin:0;

  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:0;
}

.pp-laser-precision__card {
position:relative;
  overflow:hidden;
  min-height:clamp(420px, 31vw, 620px);
  background:#030303;
  border:0;
}

.pp-laser-precision__card img {
position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;

  object-fit:cover;
  object-position:center;

  filter:saturate(1.08) contrast(1.02) brightness(1.18);
  transform:scale(1);

  transition:
    transform .8s cubic-bezier(.22,1,.36,1),
    filter .8s cubic-bezier(.22,1,.36,1);
}

.pp-laser-precision__card:hover img {
transform:scale(1.045);
  filter:saturate(1.12) contrast(1.02) brightness(1.22);
}

.pp-laser-precision__card-overlay {
display:none;
}

.pp-laser-precision__card-content {
position:absolute;
  z-index:2;
  left:clamp(28px, 4vw, 76px);
  right:clamp(28px, 4vw, 76px);
  bottom:clamp(28px, 4vw, 70px);

  max-width:620px;
  padding:0;

  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

.pp-laser-precision__card-content span {
display:none;
}

.pp-laser-precision__card-content h3 {
margin:0 0 12px;

  color:#ffffff;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(36px, 3vw, 62px);
  line-height:.9;
  letter-spacing:-.075em;
  text-transform:uppercase;
  font-weight:500;

  text-shadow:0 3px 18px rgba(0,0,0,.42);
}

.pp-laser-precision__card-content p {
max-width:520px;
  margin:0;

  color:rgba(255,255,255,.88);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(16px, 1vw, 20px);
  line-height:1.48;
  letter-spacing:-.02em;

  text-shadow:0 2px 14px rgba(0,0,0,.38);
}

@media (max-width:1199px) {
  .pp-laser-precision__card {
min-height:470px;
  }
}

@media (max-width:767px) {
  .pp-laser-precision__gallery-inner {
grid-template-columns:1fr;
  }

  .pp-laser-precision__card {
min-height:460px;
  }

  .pp-laser-precision__card-content {
left:22px;
    right:22px;
    bottom:28px;
  }

  .pp-laser-precision__card-content h3 {
font-size:clamp(34px, 10vw, 48px);
  }

  .pp-laser-precision__card-content p {
font-size:16px;
  }
}

@media (max-width:420px) {
  .pp-laser-precision__card {
min-height:410px;
  }

  .pp-laser-precision__card-content h3 {
font-size:31px;
  }

  .pp-laser-precision__card-content p {
font-size:15px;
  }
}

@media (max-width:1199px) {
  .pp-laser-precision__inner {
width:calc(100% - 48px);
  }

  .pp-laser-precision h2 {
max-width:920px;
    font-size:clamp(58px, 10vw, 112px);
  }

  .pp-laser-precision__intro p {
max-width:780px;
  }

  .pp-laser-precision__features {
grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:42px 28px;
  }

  .pp-laser-precision__features article,
  .pp-laser-precision__features article:not(:first-child),
  .pp-laser-precision__features article:nth-child(2),
  .pp-laser-precision__features article:nth-child(3),
  .pp-laser-precision__features article:nth-child(4) {
border-left:none;
  }

  .pp-laser-precision__card {
min-height:470px;
  }
}

/* ========================================================= RESPONSIVE — MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-laser-precision__intro {
padding:82px 0 56px;
  }

  .pp-laser-precision__inner {
width:calc(100% - 28px);
  }

  .pp-laser-precision__eyebrow {
font-size:11px;
    letter-spacing:.22em;
    margin-bottom:28px;
  }

  .pp-laser-precision__eyebrow::before {
width:30px;
  }

  .pp-laser-precision h2 {
font-size:clamp(44px, 13vw, 66px);
    line-height:.9;
    letter-spacing:-.07em;
  }

  .pp-laser-precision__intro p {
margin-top:30px;
    font-size:18px;
    line-height:1.52;
  }

  .pp-laser-precision__features {
grid-template-columns:1fr;
    gap:26px;
    margin-top:52px;
  }

  .pp-laser-precision__features article,
  .pp-laser-precision__features article:not(:first-child),
  .pp-laser-precision__features article:nth-child(2),
  .pp-laser-precision__features article:nth-child(3),
  .pp-laser-precision__features article:nth-child(4) {
padding:26px 0;
    border-left:none;
    border-bottom:1px solid rgba(165,134,103,.18);
    text-align:center;
    align-items:center;
    display:flex;
  }

  .pp-laser-precision__features article:hover {
transform:none;
  }

  .pp-laser-precision__icon {
width:62px;
    height:62px;
  }

  .pp-laser-precision__features h3 {
margin:22px 0 12px;
    font-size:18px;
  }

  .pp-laser-precision__features p {
max-width:100%;
    font-size:17px;
    line-height:1.55;
  }

  .pp-laser-precision__gallery-inner {
grid-template-columns:1fr;
  }

  .pp-laser-precision__card {
min-height:460px;
  }

  .pp-laser-precision__card-content {
left:18px;
    right:18px;
    bottom:18px;
    padding:20px;
  }

  .pp-laser-precision__card-content h3 {
font-size:clamp(32px, 9.5vw, 46px);
  }

  .pp-laser-precision__card-content p {
font-size:16px;
  }
}

/* ========================================================= RESPONSIVE — SMALL MOBILE ========================================================= */

@media (max-width:420px) {
  .pp-laser-precision__intro {
padding-top:72px;
  }

  .pp-laser-precision h2 {
font-size:40px;
  }

  .pp-laser-precision__intro p {
font-size:17px;
  }

  .pp-laser-precision__icon {
width:54px;
    height:54px;
  }

  .pp-laser-precision__features p {
font-size:16px;
  }

  .pp-laser-precision__card {
min-height:410px;
  }

  .pp-laser-precision__card-content h3 {
font-size:31px;
  }

  .pp-laser-precision__card-content p {
font-size:15px;
  }
}

.pp-laser-capabilities {
position:relative;
  isolation:isolate;
  overflow:hidden;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  min-height:clamp(660px, 50vw, 900px);
  display:flex;
  align-items:center;
  background:#050505;
  color:#fff;
}

.pp-laser-capabilities__media,
.pp-laser-capabilities__overlay {
position:absolute;
  inset:0;
}

.pp-laser-capabilities__media {
z-index:-4;
}

.pp-laser-capabilities__media img {
width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.72) contrast(1.16) brightness(.54);
}

.pp-laser-capabilities__overlay {
z-index:-3;
  background:
    linear-gradient(90deg, rgba(5,5,5,.95) 0%, rgba(5,5,5,.78) 42%, rgba(5,5,5,.38) 100%),
    linear-gradient(180deg, rgba(5,5,5,.22), rgba(5,5,5,.88));
}

.pp-laser-capabilities__shell {
position:relative;
  z-index:2;
  width:min(1540px, calc(100% - 64px));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0, 620px) minmax(0, 1fr);
  gap:clamp(54px, 8vw, 130px);
  align-items:end;
}

.pp-laser-capabilities h2 {
margin:28px 0 0;
  color:#fff;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(58px, 6.2vw, 116px);
  line-height:.86;
  letter-spacing:-.08em;
  text-transform:uppercase;
}

.pp-laser-capabilities h2::after {
content:".";
  color:#A58667;
}

.pp-laser-capabilities p {
max-width:680px;
  margin:34px 0 0;
  color:rgba(255,255,255,.76);
  font-size:clamp(20px, 1.28vw, 26px);
  line-height:1.55;
  letter-spacing:-.025em;
}

.pp-laser-capabilities__list {
display:grid;
  grid-template-columns:1fr;
  border-top:1px solid rgba(255,255,255,.16);
}

.pp-laser-capabilities__list article {
padding:clamp(28px, 2.4vw, 42px) 0;
  border-bottom:1px solid rgba(255,255,255,.14);
}

.pp-laser-capabilities__list span {
display:block;
  margin-bottom:20px;
  color:#A58667;
  font-size:13px;
  letter-spacing:.16em;
}

.pp-laser-capabilities__list h3 {
margin:0 0 12px;
  color:#fff;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(28px, 2.4vw, 48px);
  line-height:.95;
  letter-spacing:-.06em;
  text-transform:uppercase;
}

.pp-laser-capabilities__list p {
max-width:560px;
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:clamp(16px, 1vw, 20px);
  line-height:1.5;
}

/* ========================================================= 5. PROCESS ========================================================= */

.pp-laser-process {
position:relative;
  overflow:hidden;
  background:#f4f1eb;
  color:#101010;
  padding:clamp(88px, 7.5vw, 132px) 0;
  border-top:1px solid rgba(16,16,16,.10);
}

.pp-laser-process::before {
content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(0,0,0,.028) 1px, transparent 1px),
    linear-gradient(180deg, rgba(0,0,0,.020) 1px, transparent 1px);
  background-size:82px 82px;
  opacity:.34;
  mask-image:radial-gradient(circle at 50% 42%, #000 0%, transparent 78%);
}

.pp-laser-process__shell {
position:relative;
  z-index:2;
  width:min(1540px, calc(100% - 64px));
  margin:0 auto;
}

/* CABEÇALHO — IGUAL À ESCALA DA PÁGINA DESIGN */

.pp-laser-process__head {
display:grid;
  grid-template-columns:minmax(0, 420px) minmax(0, 1fr);
  gap:clamp(44px, 7vw, 120px);
  align-items:end;
  margin-bottom:clamp(56px, 5.4vw, 84px);
}

.pp-laser-process__head .pp-laser-eyebrow {
grid-column:auto;
  grid-row:auto;
  align-self:end;
}

.pp-laser-process h2 {
margin:0;
  max-width:860px;

  color:#101010;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(52px, 5.3vw, 96px);
  line-height:.88;
  letter-spacing:-.074em;
  text-transform:uppercase;
  font-weight:500;
}

.pp-laser-process h2::after {
display:none;
}

.pp-laser-process__head p {
grid-column:1;
  grid-row:2;

  max-width:650px;
  margin:0;

  color:rgba(16,16,16,.72);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(20px, 1.25vw, 25px);
  line-height:1.55;
  letter-spacing:-.025em;
}

/* LINHA DO PROCESSO */

.pp-laser-process__line {
display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:0;
  border-top:1px solid rgba(16,16,16,.18);
}

.pp-laser-process__line article {
position:relative;
  padding:42px 34px 0 0;
}

.pp-laser-process__line article:not(:last-child)::after {
content:"";
  position:absolute;
  top:-1px;
  right:34px;
  width:54px;
  height:1px;
  background:#A58667;
}

.pp-laser-process__line span {
display:block;
  margin-bottom:18px;

  color:#A58667;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:15px;
  line-height:1;
  letter-spacing:.12em;
}

.pp-laser-process__line h3 {
margin:0 0 14px;

  color:#101010;
  font-family:"URWGeometricSemiBold", "Figtree", sans-serif;
  font-size:clamp(22px, 1.7vw, 34px);
  line-height:.95;
  letter-spacing:-.05em;
  text-transform:uppercase;
  font-weight:500;
}

.pp-laser-process__line p {
max-width:260px;
  margin:0;

  color:rgba(16,16,16,.66);
  font-family:"URWGeometricMedium", "Figtree", sans-serif;
  font-size:clamp(16px, 1vw, 19px);
  line-height:1.52;
  letter-spacing:-.02em;
}

@media (max-width:1199px) {
  .pp-laser-process__head {
grid-template-columns:1fr;
    gap:34px;
    margin-bottom:64px;
  }

  .pp-laser-process__head .pp-laser-eyebrow,
  .pp-laser-process h2,
  .pp-laser-process__head p {
grid-column:1;
    grid-row:auto;
  }

  .pp-laser-process h2 {
max-width:900px;
    font-size:clamp(56px, 9vw, 88px);
    line-height:.88;
  }

  .pp-laser-process__head p {
max-width:760px;
  }

  .pp-laser-process__line {
grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:28px;
  }

  .pp-laser-process__line article {
padding:0 0 28px;
    border-bottom:1px solid rgba(16,16,16,.12);
  }

  .pp-laser-process__line article::after {
display:none;
  }

  .pp-laser-process__line p {
max-width:520px;
  }
}

/* MOBILE */

@media (max-width:767px) {
  .pp-laser-process {
padding:78px 0 84px;
  }

  .pp-laser-process__shell {
width:calc(100% - 28px);
  }

  .pp-laser-process__head {
gap:28px;
    margin-bottom:52px;
  }

  .pp-laser-process h2 {
font-size:clamp(44px, 13vw, 64px);
    line-height:.9;
    letter-spacing:-.07em;
  }

  .pp-laser-process__head p {
font-size:18px;
    line-height:1.55;
  }

  .pp-laser-process__line {
grid-template-columns:1fr;
    gap:0;
  }

  .pp-laser-process__line article {
padding:24px 0;
  }
}

@media (max-width:1199px) {
  .pp-laser-intro__shell,
  .pp-laser-capabilities__shell,
  .pp-laser-process__head {
grid-template-columns:1fr;
  }

  .pp-laser-process__line {
grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:28px;
  }

  .pp-laser-process__line article {
padding:0 0 28px;
    border-bottom:1px solid rgba(16,16,16,.12);
  }

  .pp-laser-process__line article::after {
display:none;
  }

  .pp-laser-process__line p {
max-width:520px;
  }
}

@media (max-width:767px) {
  .pp-laser-intro__shell,
  .pp-laser-process__shell,
  .pp-laser-capabilities__shell {
width:calc(100% - 28px);
  }

  .pp-laser-intro {
padding:78px 0;
  }

  .pp-laser-intro h2,
  .pp-laser-process h2,
  .pp-laser-capabilities h2 {
font-size:clamp(44px, 13vw, 64px);
    line-height:.9;
  }

  .pp-laser-intro p,
  .pp-laser-process__head p,
  .pp-laser-capabilities p {
font-size:18px;
  }

  .pp-laser-intro__visual {
height:390px;
  }

  .pp-laser-capabilities {
padding:86px 0;
  }

  .pp-laser-process__line {
grid-template-columns:1fr;
  }
}

@media (max-width:420px) {
  .pp-laser-intro__visual {
height:340px;
  }
}

.pp-susta-commitment-v2 {
--susta-bg:#f4f1eb;
  --susta-text:#101010;
  --susta-muted:rgba(16,16,16,.72);
  --susta-line:rgba(16,16,16,.13);
  --susta-accent:#A58667;

  position:relative;
  width:100%;
  margin:0;
  overflow:hidden;

  background:var(--susta-bg);
  color:var(--susta-text);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );
}

@supports (overflow:clip) {
  .pp-susta-commitment-v2 {
overflow:clip;
  }
}

.pp-susta-commitment-v2 *,
.pp-susta-commitment-v2 *::before,
.pp-susta-commitment-v2 *::after {
box-sizing:border-box;
}

.pp-susta-commitment-v2::before {
content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;

  background:
    radial-gradient(
      circle at 78% 12%,
      rgba(255,255,255,.74),
      transparent 30%
    ),
    radial-gradient(
      circle at 12% 82%,
      rgba(165,134,103,.07),
      transparent 34%
    );

  opacity:.78;
}

.pp-susta-commitment-v2__intro {
position:relative;
  z-index:2;

  width:min(1460px, calc(100% - 88px));
  margin:0 auto;

  min-height:clamp(540px, 42vw, 720px);

  display:grid;
  grid-template-columns:minmax(260px, .76fr) minmax(0, 1.24fr);
  align-items:center;

  gap:clamp(48px, 7vw, 118px);

  padding:
    clamp(82px, 7.5vw, 128px)
    0
    clamp(72px, 6.5vw, 108px);
}

.pp-susta-commitment-v2__label {
position:relative;

  min-width:0;
  min-height:310px;

  display:flex;
  flex-direction:column;
  justify-content:center;

  padding-right:clamp(38px, 5vw, 92px);
}

.pp-susta-commitment-v2__label::after {
content:"";

  position:absolute;
  top:50%;
  right:0;

  width:1px;
  height:min(340px, 40vh);

  background:var(--susta-line);
  transform:translateY(-50%);
}

.pp-susta-commitment-v2__label > span {
display:block;

  width:74px;
  height:3px;

  margin-bottom:clamp(30px, 3vw, 42px);

  background:var(--susta-accent);
}

.pp-susta-commitment-v2__label h2 {
max-width:380px;
  margin:0;

  color:var(--susta-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(36px, 3vw, 58px);
  line-height:1.02;
  font-weight:400;

  letter-spacing:-.055em;
  text-transform:uppercase;

  text-wrap:balance;
}

.pp-susta-commitment-v2__statement {
min-width:0;
  max-width:860px;
}

.pp-susta-commitment-v2__statement h3 {
max-width:830px;
  margin:0;

  color:var(--susta-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(31px, 2.65vw, 48px);
  line-height:1.08;
  font-weight:400;

  letter-spacing:-.052em;
  text-transform:uppercase;

  text-wrap:balance;
}

.pp-susta-commitment-v2__statement p {
max-width:760px;

  margin:clamp(28px, 3.6vw, 52px) 0 0;

  color:var(--susta-muted);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(17px, 1.12vw, 21px);
  line-height:1.62;
  font-weight:400;

  letter-spacing:-.018em;
}

.pp-susta-commitment-v2 .pp-susta-areas-intro {
position:relative;
  z-index:2;

  width:min(1460px, calc(100% - 88px));

  /* mais espaço depois de “O nosso compromisso” */
  margin:
    clamp(58px, 5vw, 92px)
    auto
    0;

  padding:
    0
    0
    clamp(54px, 5vw, 82px);
}

.pp-susta-commitment-v2 .pp-susta-areas-intro__eyebrow {
display:inline-flex;
  align-items:center;

  gap:18px;

  margin-bottom:clamp(28px, 3vw, 46px);

  color:var(--susta-accent);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1;
  font-weight:400;

  letter-spacing:.28em;
  text-transform:uppercase;
}

.pp-susta-commitment-v2
.pp-susta-areas-intro__eyebrow::before {
content:"";

  width:52px;
  height:1px;

  flex:0 0 auto;

  background:var(--susta-accent);
}

.pp-susta-commitment-v2 .pp-susta-areas-intro h2 {
max-width:980px;
  margin:0;

  color:var(--susta-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(54px, 6vw, 110px);
  line-height:.9;
  font-weight:400;

  letter-spacing:-.075em;
  text-transform:uppercase;

  text-wrap:balance;
}

.pp-susta-commitment-v2 .pp-susta-areas-intro p {
max-width:720px;

  margin:clamp(26px, 3vw, 40px) 0 0;

  color:var(--susta-muted);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(18px, 1.15vw, 23px);
  line-height:1.58;
  font-weight:400;

  letter-spacing:-.018em;
}

.pp-susta-commitment-v2 .pp-susta-proof-flow {
position:relative;
  z-index:2;

  width:100%;
  margin:0;
  padding:0;

  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));

  gap:1px;

  overflow:hidden;

  background:rgba(255,255,255,.14);
}

.pp-susta-commitment-v2 .pp-susta-proof {
position:relative;
  isolation:isolate;

  min-width:0;

  /*
    1366 px: aproximadamente 420 px
    1920 px: aproximadamente 540 px
    ultrawide: máximo 620 px
  */
  height:clamp(420px, 28.125vw, 620px);

  overflow:hidden;

  background:#090909;
  color:#fff;
}

.pp-susta-commitment-v2 .pp-susta-proof__media {
position:absolute;
  inset:0;
  z-index:1;

  width:100%;
  height:100%;

  overflow:hidden;

  background:#090909;
}

.pp-susta-commitment-v2 .pp-susta-proof__media img {
display:block;

  width:100%;
  height:100%;

  max-width:none;

  object-fit:cover;
  object-position:center;

  opacity:1;

  transform:scale(1.01);
  transform-origin:center;

  filter:
    brightness(.98)
    contrast(1.02)
    saturate(1.02);

  transition:
    transform 1.1s cubic-bezier(.22,1,.36,1);

  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  will-change:transform;
}

.pp-susta-commitment-v2
.pp-susta-proof--energy
.pp-susta-proof__media img {
object-position:center;
  filter:
    brightness(.97)
    contrast(1.02)
    saturate(1.03);
}

.pp-susta-commitment-v2
.pp-susta-proof--certified
.pp-susta-proof__media img {
object-position:center;
  filter:
    brightness(1.06)
    contrast(.99)
    saturate(.98);
}

.pp-susta-commitment-v2
.pp-susta-proof--recycled
.pp-susta-proof__media img {
object-position:center;
  filter:
    brightness(1)
    contrast(1.01)
    saturate(1.01);
}

.pp-susta-commitment-v2
.pp-susta-proof--waste
.pp-susta-proof__media img {
object-position:center;
  filter:
    brightness(1.04)
    contrast(1.01)
    saturate(.98);
}

@media (hover:hover) and (pointer:fine) {
  .pp-susta-commitment-v2
  .pp-susta-proof:hover
  .pp-susta-proof__media img {
transform:scale(1.035);
  }
}

.pp-susta-commitment-v2 .pp-susta-proof__overlay {
position:absolute;
  inset:0;
  z-index:2;

  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,0) 34%,
      rgba(0,0,0,.04) 45%,
      rgba(0,0,0,.18) 58%,
      rgba(0,0,0,.48) 75%,
      rgba(0,0,0,.78) 90%,
      rgba(0,0,0,.92) 100%
    );
}

.pp-susta-commitment-v2 .pp-susta-proof__copy {
position:absolute;
  inset:0;
  z-index:3;

  min-width:0;

  display:flex;
  align-items:flex-end;

  padding:
    0
    clamp(30px, 2.8vw, 54px)
    clamp(26px, 2.2vw, 42px);

  pointer-events:none;
}

.pp-susta-commitment-v2 .pp-susta-proof__copy-inner {
width:100%;
  min-width:0;
  max-width:760px;
}

.pp-susta-commitment-v2 .pp-susta-proof h2 br {
display:none;
}

.pp-susta-commitment-v2 .pp-susta-proof h2 {
width:100%;
  max-width:none;

  margin:0;

  color:#fff;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(27px, 1.9vw, 38px);
  line-height:1.03;
  font-weight:400;

  letter-spacing:-.042em;
  text-transform:uppercase;

  text-shadow:none;
  text-wrap:balance;

  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

.pp-susta-commitment-v2 .pp-susta-proof p {
width:100%;
  max-width:680px;

  margin:clamp(9px, .8vw, 14px) 0 0;

  color:rgba(255,255,255,.92);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(14px, .9vw, 17px);
  line-height:1.48;
  font-weight:400;

  letter-spacing:-.012em;

  text-shadow:none;
  overflow-wrap:break-word;

  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

.pp-susta-commitment-v2 .pp-susta-proof p + p {
display:none;
}

@media (min-width:1800px) {
  .pp-susta-commitment-v2__intro,
  .pp-susta-commitment-v2 .pp-susta-areas-intro {
width:min(1600px, calc(100% - 120px));
  }

  .pp-susta-commitment-v2 .pp-susta-proof__copy {
padding:
      0
      60px
      46px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof h2 {
font-size:38px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof p {
font-size:17px;
  }
}

@media (max-width:1199px) {
  .pp-susta-commitment-v2 .pp-susta-areas-intro {
margin-top:68px;
    padding-bottom:60px;
  }

  .pp-susta-commitment-v2__intro,
  .pp-susta-commitment-v2 .pp-susta-areas-intro {
width:calc(100% - 52px);
  }

  .pp-susta-commitment-v2__intro {
min-height:auto;

    grid-template-columns:1fr;

    gap:42px;

    padding:
      84px
      0
      76px;
  }

  .pp-susta-commitment-v2__label {
min-height:auto;

    padding-right:0;
  }

  .pp-susta-commitment-v2__label::after {
display:none;
  }

  .pp-susta-commitment-v2__label > span {
margin-bottom:30px;
  }

  .pp-susta-commitment-v2__label h2 {
max-width:620px;

    font-size:clamp(38px, 5vw, 54px);
  }

  .pp-susta-commitment-v2__statement {
max-width:920px;
  }

  .pp-susta-commitment-v2__statement h3 {
max-width:900px;

    font-size:clamp(33px, 4.4vw, 52px);
    line-height:1.08;
  }

  .pp-susta-commitment-v2__statement p {
max-width:820px;

    font-size:18px;
  }

  .pp-susta-commitment-v2 .pp-susta-areas-intro {
padding-bottom:60px;
  }

  .pp-susta-commitment-v2 .pp-susta-areas-intro h2 {
font-size:clamp(48px, 8vw, 88px);
  }

  .pp-susta-commitment-v2 .pp-susta-proof {
height:clamp(410px, 47vw, 520px);
  }

  .pp-susta-commitment-v2 .pp-susta-proof__copy {
padding:
      0
      32px
      30px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof h2 {
font-size:clamp(26px, 3vw, 32px);
  }

  .pp-susta-commitment-v2 .pp-susta-proof p {
max-width:560px;

    font-size:15px;
    line-height:1.46;
  }
}

/* ========================================================= MOBILE ATÉ 767 px ========================================================= */

@media (max-width:767px) {
  .pp-susta-commitment-v2__intro,
  .pp-susta-commitment-v2 .pp-susta-areas-intro {
width:calc(100% - 32px);
  }

  .pp-susta-commitment-v2__intro {
gap:34px;

    padding:
      68px
      0
      68px;
  }

  .pp-susta-commitment-v2__label > span {
width:54px;
    height:2px;

    margin-bottom:24px;
  }

  .pp-susta-commitment-v2__label h2 {
max-width:100%;

    font-size:clamp(34px, 10vw, 46px);
    line-height:1.04;
  }

  .pp-susta-commitment-v2__statement h3 {
font-size:clamp(28px, 7.4vw, 38px);
    line-height:1.1;

    letter-spacing:-.045em;
  }

  .pp-susta-commitment-v2__statement p {
margin-top:26px;

    font-size:17px;
    line-height:1.58;
  }

  .pp-susta-commitment-v2 .pp-susta-areas-intro {
padding-bottom:44px;
  }

  .pp-susta-commitment-v2
  .pp-susta-areas-intro__eyebrow {
gap:14px;

    margin-bottom:25px;

    font-size:10px;
    letter-spacing:.22em;
  }

  .pp-susta-commitment-v2
  .pp-susta-areas-intro__eyebrow::before {
width:34px;
  }

  .pp-susta-commitment-v2 .pp-susta-areas-intro h2 {
font-size:clamp(38px, 11vw, 58px);
    line-height:.92;

    letter-spacing:-.065em;
  }

  .pp-susta-commitment-v2 .pp-susta-areas-intro p {
margin-top:25px;

    font-size:17px;
    line-height:1.55;
  }

  .pp-susta-commitment-v2 .pp-susta-proof-flow {
grid-template-columns:1fr;
  }

  .pp-susta-commitment-v2 .pp-susta-proof {
height:clamp(410px, 72vw, 560px);
  }

  .pp-susta-commitment-v2 .pp-susta-proof__copy {
padding:
      0
      26px
      28px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof h2 {
font-size:clamp(28px, 7.5vw, 36px);
    line-height:1.04;
  }

  .pp-susta-commitment-v2 .pp-susta-proof p {
max-width:540px;

    margin-top:10px;

    font-size:15px;
    line-height:1.45;
  }

  .pp-susta-commitment-v2 .pp-susta-proof__overlay {
background:
      linear-gradient(
        180deg,
        rgba(0,0,0,0) 0%,
        rgba(0,0,0,0) 30%,
        rgba(0,0,0,.08) 46%,
        rgba(0,0,0,.36) 67%,
        rgba(0,0,0,.76) 88%,
        rgba(0,0,0,.94) 100%
      );
  }
}

/* ========================================================= MOBILE PEQUENO ATÉ 420 px ========================================================= */

@media (max-width:420px) {
  .pp-susta-commitment-v2__intro,
  .pp-susta-commitment-v2 .pp-susta-areas-intro {
width:calc(100% - 24px);
  }

  .pp-susta-commitment-v2__intro {
padding:
      58px
      0
      60px;
  }

  .pp-susta-commitment-v2__label h2 {
font-size:34px;
  }

  .pp-susta-commitment-v2__statement h3 {
font-size:27px;
  }

  .pp-susta-commitment-v2__statement p {
font-size:16px;
  }

  .pp-susta-commitment-v2 .pp-susta-areas-intro h2 {
font-size:36px;
  }

  .pp-susta-commitment-v2 .pp-susta-areas-intro p {
font-size:16px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof {
height:clamp(390px, 108vw, 460px);
  }

  .pp-susta-commitment-v2 .pp-susta-proof__copy {
padding:
      0
      22px
      24px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof h2 {
font-size:28px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof p {
font-size:14px;
    line-height:1.42;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ATÉ 340 px ========================================================= */

@media (max-width:340px) {
  .pp-susta-commitment-v2__intro,
  .pp-susta-commitment-v2 .pp-susta-areas-intro {
width:calc(100% - 20px);
  }

  .pp-susta-commitment-v2 .pp-susta-proof {
height:390px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof__copy {
padding:
      0
      18px
      21px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof h2 {
font-size:25px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof p {
font-size:13px;
  }
}

@media (orientation:landscape) and (max-height:500px) {
  .pp-susta-commitment-v2 .pp-susta-proof {
height:360px;
    min-height:360px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof__copy {
padding:
      0
      24px
      22px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof h2 {
font-size:26px;
  }

  .pp-susta-commitment-v2 .pp-susta-proof p {
max-width:560px;

    font-size:14px;
    line-height:1.4;
  }
}

@media (orientation:landscape)
  and (min-width:700px)
  and (max-height:500px) {
  .pp-susta-commitment-v2 .pp-susta-proof-flow {
grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-susta-commitment-v2 .pp-susta-proof__media img {
transition:none;
    transform:none;
  }

  .pp-susta-commitment-v2
  .pp-susta-proof:hover
  .pp-susta-proof__media img {
transform:none;
  }
}

.pp-susta-cert {
--cert-bg:#f4f1eb;
  --cert-text:#111111;
  --cert-muted:rgba(17,17,17,.78);
  --cert-accent:#A58667;
  --cert-card:rgba(255,255,255,.96);

  position:relative;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  overflow:hidden;
  background:var(--cert-bg);
  color:var(--cert-text);
  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
}

.pp-susta-cert *,
.pp-susta-cert *::before,
.pp-susta-cert *::after {
box-sizing:border-box;
}

.pp-susta-cert__bg {
position:absolute;
  inset:0;
  z-index:1;
}

.pp-susta-cert__bg img {
display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  filter:saturate(1.05) contrast(1.04) brightness(.98);
}

.pp-susta-cert__overlay {
position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(
      90deg,
      rgba(244,241,235,.82) 0%,
      rgba(244,241,235,.66) 16%,
      rgba(244,241,235,.40) 34%,
      rgba(244,241,235,.15) 54%,
      rgba(244,241,235,.04) 72%,
      rgba(244,241,235,0) 86%
    );
}

.pp-susta-cert__container {
position:relative;
  z-index:3;
  width:min(1460px, calc(100% - 88px));
  margin:0 auto;
  min-height:clamp(820px, 52vw, 960px);
  padding:clamp(72px, 7vw, 108px) 0 clamp(72px, 7vw, 104px);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.pp-susta-cert__intro {
max-width:720px;
}

.pp-susta-cert__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;
  margin-bottom:clamp(18px, 2vw, 28px);

  color:var(--cert-accent);
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:12px;
  line-height:1;
  letter-spacing:.28em;
  text-transform:uppercase;
}

.pp-susta-cert__eyebrow::after {
content:"";
  width:72px;
  height:1px;
  background:var(--cert-accent);
}

.pp-susta-cert__intro h2 {
margin:0;
  max-width:690px;

  color:var(--cert-text);
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(56px, 6.9vw, 106px);
  line-height:.88;
  letter-spacing:-.085em;
  text-transform:uppercase;
  font-weight:400;
}

.pp-susta-cert__intro p {
max-width:620px;
  margin:clamp(34px, 3.4vw, 44px) 0 0;

  color:var(--cert-muted);
  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(20px, 1.28vw, 26px);
  line-height:1.5;
  letter-spacing:-.025em;
  font-weight:400;
}

.pp-susta-cert__grid {
margin-top:clamp(62px, 6vw, 86px);
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:clamp(18px, 1.5vw, 26px);
  align-items:stretch;
}

.pp-susta-cert__card {
position:relative;
  min-height:clamp(150px, 11vw, 188px);
  perspective:1800px;
  border-radius:20px;
  cursor:pointer;
  outline:none;
}

.pp-susta-cert__card-inner {
position:relative;
  width:100%;
  height:100%;
  min-height:clamp(150px, 11vw, 188px);
  transform-style:preserve-3d;
  transition:transform 1.35s cubic-bezier(.19,1,.22,1);
}

.pp-susta-cert__card:hover .pp-susta-cert__card-inner,
.pp-susta-cert__card:focus .pp-susta-cert__card-inner,
.pp-susta-cert__card:focus-within .pp-susta-cert__card-inner,
.pp-susta-cert__card.is-active .pp-susta-cert__card-inner {
transform:rotateY(180deg);
}

.pp-susta-cert__face {
position:absolute;
  inset:0;
  border-radius:20px;
  background:var(--cert-card);
  box-shadow:
    0 16px 42px rgba(17,17,17,.09),
    inset 0 1px 0 rgba(255,255,255,.78);
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  overflow:hidden;
}

.pp-susta-cert__face--front {
display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
}

.pp-susta-cert__face--front img {
display:block;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:contain;
  object-position:center;
  padding:clamp(10px, 1vw, 16px);
}

.pp-susta-cert__face--back {
transform:rotateY(180deg);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:clamp(24px, 2.2vw, 34px);
}

.pp-susta-cert__face--back h3 {
margin:0 0 12px;

  color:var(--cert-text);
  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(22px, 1.45vw, 30px);
  line-height:.98;
  letter-spacing:-.05em;
  text-transform:uppercase;
  font-weight:400;
}

.pp-susta-cert__face--back p {
margin:0;
  color:var(--cert-muted);
  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(15px, .96vw, 17px);
  line-height:1.56;
  letter-spacing:-.01em;
}

.pp-susta-cert .reveal-up {
opacity:0;
  transform:translateY(28px);
  transition:
    opacity .85s ease,
    transform .85s cubic-bezier(.22,1,.36,1);
}

.pp-susta-cert .reveal-up.is-visible,
.pp-susta-cert.is-visible .reveal-up {
opacity:1;
  transform:translateY(0);
}

@media (max-width:1199px) {
  .pp-susta-cert__container {
width:calc(100% - 52px);
    min-height:auto;
    padding:76px 0 84px;
  }

  .pp-susta-cert__intro h2 {
max-width:620px;
    font-size:clamp(52px, 9vw, 84px);
  }

  .pp-susta-cert__intro p {
max-width:620px;
    font-size:clamp(19px, 2vw, 24px);
  }

  .pp-susta-cert__grid {
grid-template-columns:repeat(2, minmax(0, 1fr));
    margin-top:52px;
  }

  .pp-susta-cert__card,
  .pp-susta-cert__card-inner {
min-height:190px;
  }

  .pp-susta-cert__face--front img {
padding:12px;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-susta-cert__container {
width:calc(100% - 28px);
    padding:62px 0 74px;
  }

  .pp-susta-cert__overlay {
background:
      linear-gradient(
        180deg,
        rgba(244,241,235,.82) 0%,
        rgba(244,241,235,.62) 26%,
        rgba(244,241,235,.32) 50%,
        rgba(244,241,235,.14) 76%,
        rgba(244,241,235,.10) 100%
      );
  }

  .pp-susta-cert__eyebrow {
gap:12px;
    margin-bottom:18px;
    font-size:10px;
    letter-spacing:.22em;
  }

  .pp-susta-cert__eyebrow::after {
width:42px;
  }

  .pp-susta-cert__intro h2 {
max-width:100%;
    font-size:clamp(40px, 13vw, 60px);
    line-height:.92;
    letter-spacing:-.075em;
  }

  .pp-susta-cert__intro p {
max-width:100%;
    margin-top:24px;
    font-size:17px;
    line-height:1.52;
    letter-spacing:-.02em;
  }

  .pp-susta-cert__grid {
grid-template-columns:1fr;
    gap:16px;
    margin-top:42px;
  }

  .pp-susta-cert__card,
  .pp-susta-cert__card-inner {
min-height:178px;
  }

  .pp-susta-cert__face {
border-radius:20px;
  }

  .pp-susta-cert__face--front img {
padding:10px;
  }

  .pp-susta-cert__face--back {
padding:24px 22px;
  }

  .pp-susta-cert__face--back h3 {
font-size:24px;
  }

  .pp-susta-cert__face--back p {
font-size:15px;
    line-height:1.52;
  }
}

/* ========================================================= SMALL MOBILE ========================================================= */

@media (max-width:420px) {
  .pp-susta-cert__container {
width:calc(100% - 24px);
  }

  .pp-susta-cert__intro h2 {
font-size:38px;
  }

  .pp-susta-cert__card,
  .pp-susta-cert__card-inner {
min-height:160px;
  }

  .pp-susta-cert__face--front img {
padding:8px;
  }
}

/* ========================================================= HOME — SPORT TYPOGRAPHY PATCH / VISIBLE VERSION Força a Home a ficar mais próxima da página Design ========================================================= */

body.pp-home-page {
--pp-font-body:"URWGeometricMedium", "Figtree", Arial, sans-serif;
  --pp-font-heading:"URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif;
  font-family:var(--pp-font-body) !important;
}

/* títulos grandes da home */

body.pp-home-page .pp-webflow-innovation__features h3,
body.pp-home-page .pp-home-sustainability-orbit__cards h3 {
font-family:var(--pp-font-heading) !important;
  font-weight:400 !important;
  line-height:.92 !important;
  letter-spacing:-.065em !important;
}

body.pp-home-page p,
body.pp-home-page .pp-home-sustainability-orbit__cards p {
font-family:var(--pp-font-body) !important;
  font-weight:400 !important;
  letter-spacing:-.025em !important;
}

/* ========================================================= HOME VALUES — SAME TYPOGRAPHIC FEEL AS DESIGN PAGE ========================================================= */

/* ======================================================================================================== HOME — TECNOLOGIA TÊXTIL / VALOR RESPONSIVO — MOBILE / TABLET / LAPTOP / DESKTOP / ULTRAWIDE =============================================================================================================== */

.pp-home-textile-value {
--value-bg:#000000;
  --value-text:#f4f2ee;
  --value-muted:rgba(244,242,238,.78);
  --value-line:rgba(255,255,255,.12);
  --value-accent:#A58667;

  position:relative;
  isolation:isolate;

  width:100%;

  overflow:hidden;

  background:var(--value-bg);
  color:var(--value-text);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );
}

.pp-home-textile-value *,
.pp-home-textile-value *::before,
.pp-home-textile-value *::after {
box-sizing:border-box;
}

.pp-home-textile-value__texture {
position:absolute;
  inset:0;
  z-index:-1;

  pointer-events:none;

  background:
    linear-gradient(
      112deg,
      transparent 0%,
      rgba(255,255,255,.018) 36%,
      transparent 62%
    ),
    repeating-linear-gradient(
      116deg,
      rgba(255,255,255,.011) 0,
      rgba(255,255,255,.011) 1px,
      transparent 1px,
      transparent 8px
    );

  opacity:.52;
}

.pp-home-textile-value__texture::after {
content:"";

  position:absolute;

  top:-24%;
  right:-8%;

  width:min(52vw, 920px);
  aspect-ratio:1;

  border-radius:50%;

  background:
    radial-gradient(
      circle at center,
      rgba(255,255,255,.06),
      transparent 66%
    );

  filter:blur(34px);

  opacity:.46;
}

.pp-home-textile-value__shell {
position:relative;
  z-index:2;

  width:min(
    1480px,
    calc(100% - clamp(48px, 7vw, 112px))
  );

  min-height:clamp(760px, 62vw, 980px);

  margin:0 auto;

  padding:
    clamp(82px, 7vw, 126px)
    0
    clamp(92px, 8vw, 142px);

  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}

.pp-home-textile-value__top-line {
position:relative;

  width:100%;
  height:1px;

  flex-shrink:0;

  margin-bottom:clamp(82px, 8vw, 142px);

  background:var(--value-line);
}

.pp-home-textile-value__top-line span {
position:absolute;

  top:50%;
  left:0;

  width:34px;
  height:2px;

  background:var(--value-accent);

  transform:translateY(-50%);
}

.pp-home-textile-value__layout {
display:grid;

  grid-template-columns:
    minmax(0, 1.18fr)
    minmax(380px, .82fr);

  column-gap:clamp(72px, 8vw, 160px);

  align-items:center;

  flex:1;

  width:100%;
}

.pp-home-textile-value__heading,
.pp-home-textile-value__copy {
min-width:0;
}

.pp-home-textile-value__heading h2 {
width:100%;
  max-width:900px;

  margin:0;

  color:var(--value-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(68px, 6.25vw, 112px);
  line-height:.86;

  letter-spacing:-.075em;

  text-transform:uppercase;

  font-weight:400;

  text-wrap:balance;
}

.pp-home-textile-value__heading h2 strong {
display:inline-block;

  color:var(--value-accent);

  font:inherit;
}

.pp-home-textile-value__copy {
width:100%;
  max-width:580px;

  align-self:center;
}

.pp-home-textile-value__copy p {
margin:0;

  color:var(--value-muted);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(20px, 1.42vw, 26px);
  line-height:1.58;

  letter-spacing:-.025em;
}

.pp-home-textile-value__copy p + p {
margin-top:clamp(30px, 3vw, 48px);
}

.pp-home-textile-value .reveal-up {
opacity:0;

  transform:translateY(34px);

  transition:
    opacity .85s ease,
    transform .85s cubic-bezier(.22,1,.36,1);
}

.pp-home-textile-value .reveal-up.is-visible,
.pp-home-textile-value.is-visible .reveal-up {
opacity:1;

  transform:translateY(0);
}

.pp-home-textile-value__copy.reveal-up {
transition-delay:.12s;
}

@media (min-width:1800px) {
  .pp-home-textile-value__shell {
width:min(1600px, calc(100% - 160px));

    min-height:940px;

    padding-top:120px;
    padding-bottom:140px;
  }

  .pp-home-textile-value__top-line {
margin-bottom:130px;
  }

  .pp-home-textile-value__layout {
grid-template-columns:
      minmax(0, 1.2fr)
      minmax(460px, .8fr);

    column-gap:clamp(130px, 8vw, 180px);
  }

  .pp-home-textile-value__heading h2 {
max-width:960px;

    font-size:clamp(100px, 6vw, 122px);
  }

  .pp-home-textile-value__copy {
max-width:620px;
  }

  .pp-home-textile-value__copy p {
font-size:clamp(25px, 1.35vw, 28px);
  }
}

@media (min-width:1440px) and (max-width:1799px) {
  .pp-home-textile-value__shell {
width:min(1440px, calc(100% - 96px));

    min-height:clamp(780px, 58vw, 900px);
  }

  .pp-home-textile-value__layout {
grid-template-columns:
      minmax(0, 1.16fr)
      minmax(390px, .84fr);

    column-gap:clamp(80px, 7vw, 130px);
  }

  .pp-home-textile-value__heading h2 {
max-width:850px;

    font-size:clamp(76px, 5.8vw, 100px);
  }

  .pp-home-textile-value__copy {
max-width:550px;
  }

  .pp-home-textile-value__copy p {
font-size:clamp(20px, 1.35vw, 24px);
  }
}

@media (min-width:1200px) and (max-width:1439px) {
  .pp-home-textile-value__shell {
width:calc(100% - 72px);

    min-height:720px;

    padding:
      clamp(72px, 6vw, 86px)
      0
      clamp(82px, 7vw, 100px);
  }

  .pp-home-textile-value__top-line {
margin-bottom:clamp(72px, 6.5vw, 92px);
  }

  .pp-home-textile-value__layout {
grid-template-columns:
      minmax(0, 1.12fr)
      minmax(340px, .88fr);

    column-gap:clamp(50px, 5vw, 70px);
  }

  .pp-home-textile-value__heading h2 {
max-width:720px;

    font-size:clamp(60px, 5.7vw, 82px);
    line-height:.88;
  }

  .pp-home-textile-value__copy {
max-width:500px;
  }

  .pp-home-textile-value__copy p {
font-size:clamp(18px, 1.5vw, 21px);
  }
}

@media (min-width:992px) and (max-width:1199px) {
  .pp-home-textile-value__shell {
width:calc(100% - 56px);

    min-height:650px;

    padding:
      68px
      0
      80px;
  }

  .pp-home-textile-value__top-line {
margin-bottom:68px;
  }

  .pp-home-textile-value__layout {
grid-template-columns:
      minmax(0, 1.06fr)
      minmax(310px, .94fr);

    column-gap:clamp(38px, 4.5vw, 52px);
  }

  .pp-home-textile-value__heading h2 {
max-width:620px;

    font-size:clamp(52px, 5.9vw, 68px);
    line-height:.9;

    letter-spacing:-.068em;
  }

  .pp-home-textile-value__copy {
max-width:420px;
  }

  .pp-home-textile-value__copy p {
font-size:clamp(17px, 1.8vw, 19px);
    line-height:1.56;
  }

  .pp-home-textile-value__copy p + p {
margin-top:28px;
  }
}

@media (min-width:768px) and (max-width:991px) {
  .pp-home-textile-value__shell {
width:calc(100% - 52px);

    min-height:auto;

    padding:
      68px
      0
      88px;
  }

  .pp-home-textile-value__texture::after {
top:-10%;
    right:-18%;

    width:72vw;
  }

  .pp-home-textile-value__top-line {
margin-bottom:62px;
  }

  .pp-home-textile-value__layout {
grid-template-columns:1fr;

    row-gap:58px;

    align-items:start;
  }

  .pp-home-textile-value__heading h2 {
width:100%;
    max-width:760px;

    font-size:clamp(56px, 8.5vw, 78px);
    line-height:.89;

    letter-spacing:-.068em;
  }

  .pp-home-textile-value__copy {
width:min(100%, 680px);

    margin-left:auto;
  }

  .pp-home-textile-value__copy p {
font-size:clamp(19px, 2.4vw, 22px);
    line-height:1.58;
  }

  .pp-home-textile-value__copy p + p {
margin-top:30px;
  }
}

/* ======================================================================================================== MOBILE GRANDE — 600PX A 767PX =============================================================================================================== */

@media (min-width:600px) and (max-width:767px) {
  .pp-home-textile-value__shell {
width:calc(100% - 44px);

    min-height:auto;

    padding:
      62px
      0
      78px;
  }

  .pp-home-textile-value__texture::after {
top:-6%;
    right:-25%;

    width:90vw;
  }

  .pp-home-textile-value__top-line {
margin-bottom:54px;
  }

  .pp-home-textile-value__top-line span {
width:30px;
  }

  .pp-home-textile-value__layout {
grid-template-columns:1fr;

    row-gap:48px;

    align-items:start;
  }

  .pp-home-textile-value__heading h2 {
max-width:650px;

    font-size:clamp(48px, 8.8vw, 58px);
    line-height:.91;

    letter-spacing:-.064em;
  }

  .pp-home-textile-value__copy {
max-width:600px;
  }

  .pp-home-textile-value__copy p {
font-size:18px;
    line-height:1.6;
  }

  .pp-home-textile-value__copy p + p {
margin-top:26px;
  }
}

/* ======================================================================================================== MOBILE — 421PX A 599PX =============================================================================================================== */

@media (min-width:421px) and (max-width:599px) {
  .pp-home-textile-value__shell {
width:calc(100% - 32px);

    min-height:auto;

    padding:
      56px
      0
      72px;
  }

  .pp-home-textile-value__texture::after {
top:0;
    right:-38%;

    width:110vw;

    opacity:.34;
  }

  .pp-home-textile-value__top-line {
margin-bottom:48px;
  }

  .pp-home-textile-value__top-line span {
width:28px;
  }

  .pp-home-textile-value__layout {
grid-template-columns:1fr;

    row-gap:42px;

    align-items:start;
  }

  .pp-home-textile-value__heading h2 {
max-width:100%;

    font-size:clamp(40px, 10.5vw, 52px);
    line-height:.92;

    letter-spacing:-.06em;
  }

  .pp-home-textile-value__copy {
max-width:100%;
  }

  .pp-home-textile-value__copy p {
font-size:17.5px;
    line-height:1.6;

    letter-spacing:-.018em;
  }

  .pp-home-textile-value__copy p + p {
margin-top:24px;
  }
}

/* ======================================================================================================== MOBILE PEQUENO — ATÉ 420PX =============================================================================================================== */

@media (max-width:420px) {
  .pp-home-textile-value__shell {
width:calc(100% - 28px);

    min-height:auto;

    padding:
      50px
      0
      66px;
  }

  .pp-home-textile-value__texture::after {
top:2%;
    right:-48%;

    width:125vw;

    opacity:.30;
  }

  .pp-home-textile-value__top-line {
margin-bottom:42px;
  }

  .pp-home-textile-value__top-line span {
width:26px;
  }

  .pp-home-textile-value__layout {
grid-template-columns:1fr;

    row-gap:38px;

    align-items:start;
  }

  .pp-home-textile-value__heading h2 {
width:100%;
    max-width:100%;

    font-size:clamp(36px, 10.8vw, 45px);
    line-height:.94;

    letter-spacing:-.055em;
  }

  .pp-home-textile-value__copy {
width:100%;
    max-width:100%;
  }

  .pp-home-textile-value__copy p {
font-size:17px;
    line-height:1.6;

    letter-spacing:-.015em;
  }

  .pp-home-textile-value__copy p + p {
margin-top:22px;
  }
}

/* ======================================================================================================== MOBILE MUITO PEQUENO — ATÉ 360PX =============================================================================================================== */

@media (max-width:360px) {
  .pp-home-textile-value__shell {
width:calc(100% - 24px);

    padding:
      46px
      0
      60px;
  }

  .pp-home-textile-value__top-line {
margin-bottom:38px;
  }

  .pp-home-textile-value__layout {
row-gap:34px;
  }

  .pp-home-textile-value__heading h2 {
font-size:clamp(33px, 10.5vw, 38px);
    line-height:.95;

    letter-spacing:-.05em;
  }

  .pp-home-textile-value__copy p {
font-size:16.5px;
    line-height:1.58;
  }
}

@media (min-width:992px) and (max-height:760px) {
  .pp-home-textile-value__shell {
min-height:620px;

    padding-top:58px;
    padding-bottom:68px;
  }

  .pp-home-textile-value__top-line {
margin-bottom:54px;
  }

  .pp-home-textile-value__heading h2 {
font-size:clamp(50px, 5.2vw, 72px);
  }

  .pp-home-textile-value__copy p {
font-size:clamp(17px, 1.35vw, 19px);
  }

  .pp-home-textile-value__copy p + p {
margin-top:24px;
  }
}

/* ======================================================================================================== MOBILE / TABLET HORIZONTAL COM POUCA ALTURA =============================================================================================================== */

@media (max-width:991px) and (orientation:landscape) {
  .pp-home-textile-value__shell {
min-height:auto;

    padding-top:50px;
    padding-bottom:62px;
  }

  .pp-home-textile-value__top-line {
margin-bottom:42px;
  }

  .pp-home-textile-value__layout {
row-gap:38px;
  }

  .pp-home-textile-value__heading h2 {
font-size:clamp(40px, 7vw, 58px);
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-home-textile-value *,
  .pp-home-textile-value *::before,
  .pp-home-textile-value *::after {
transition-duration:.01ms !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
  }

  .pp-home-textile-value .reveal-up {
opacity:1;
    transform:none;
  }
}

/* ========================================================= HOME — SOBRE NÓS FEATURE RESPONSIVO / IMAGEM 16:9 / CARD PREMIUM ========================================================= */

.pp-home-about-feature {
--about-bg:#050505;
  --about-card:#070707;
  --about-text:#ffffff;
  --about-muted:rgba(255,255,255,.70);
  --about-border:rgba(255,255,255,.10);
  --about-accent:#A58667;

  position:relative;
  isolation:isolate;

  display:flex;
  align-items:center;

  width:100vw;
  max-width:100%;

  min-height:clamp(700px, 56.25vw, 980px);

  margin:0;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  padding:0;

  overflow:hidden;

  background:var(--about-bg);
  color:var(--about-text);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );
}

.pp-home-about-feature *,
.pp-home-about-feature *::before,
.pp-home-about-feature *::after {
box-sizing:border-box;
}

.pp-home-about-feature__bg {
position:absolute;
  inset:0;
  z-index:1;

  display:block;

  width:100%;
  height:100%;

  margin:0;
  padding:0;

  overflow:hidden;

  background:#111111;
}

.pp-home-about-feature__bg img {
position:absolute;
  inset:0;

  display:block;

  width:100%;
  height:100%;
  max-width:none;

  margin:0;
  padding:0;

  object-fit:cover;
  object-position:center center;

  filter:
    saturate(.90)
    contrast(1.05)
    brightness(.84);

  transform:none;

  user-select:none;
  -webkit-user-select:none;
  -webkit-user-drag:none;

  backface-visibility:hidden;
}

.pp-home-about-feature__overlay {
position:absolute;
  inset:0;
  z-index:2;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,.05) 0%,
      rgba(0,0,0,.08) 38%,
      rgba(0,0,0,.36) 64%,
      rgba(0,0,0,.70) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,.10) 0%,
      rgba(0,0,0,.04) 48%,
      rgba(0,0,0,.30) 100%
    );
}

.pp-home-about-feature__shell {
position:relative;
  z-index:3;

  display:flex;
  align-items:center;
  justify-content:flex-end;

  width:min(
    1540px,
    calc(100% - clamp(48px, 6vw, 110px))
  );

  min-height:inherit;

  margin:0 auto;
  padding:
    clamp(72px, 6vw, 112px)
    0;
}

.pp-home-about-feature__card {
display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;

  width:min(660px, 45vw);
  min-width:0;
  min-height:clamp(520px, 35vw, 660px);

  margin:0;
  padding:clamp(46px, 4.6vw, 74px);

  overflow:hidden;

  border:1px solid var(--about-border);
  border-radius:clamp(28px, 2.5vw, 44px);

  background:
    radial-gradient(
      circle at 88% 16%,
      rgba(165,134,103,.11),
      transparent 31%
    ),
    rgba(5,5,5,.96);

  box-shadow:
    0 40px 100px rgba(0,0,0,.40),
    inset 0 1px 0 rgba(255,255,255,.07);

  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}

.pp-home-about-feature__eyebrow {
display:inline-flex;
  flex-direction:column;
  align-items:flex-start;

  width:max-content;
  max-width:100%;

  gap:14px;

  margin:0 0 clamp(30px, 3.5vw, 50px);
  padding:0;

  color:var(--about-accent);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1;
  font-weight:400;
  letter-spacing:.28em;
  text-transform:uppercase;
}

.pp-home-about-feature__eyebrow::after {
content:"";

  display:block;

  width:42px;
  height:1px;

  background:var(--about-accent);
}

.pp-home-about-feature__card h2 {
display:block;

  width:100%;
  max-width:590px;

  margin:0;
  padding:0;

  color:var(--about-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(46px, 4.55vw, 82px);
  line-height:.90;
  font-weight:400;
  letter-spacing:-.078em;
  text-transform:uppercase;

  word-break:normal;
  overflow-wrap:normal;
}

.pp-home-about-feature__card p {
display:block;

  width:100%;
  max-width:555px;

  margin:clamp(28px, 2.8vw, 42px) 0 0;
  padding:0;

  color:var(--about-muted);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(18px, 1.08vw, 22px);
  line-height:1.56;
  font-weight:400;
  letter-spacing:-.018em;

  word-break:normal;
  overflow-wrap:break-word;
}

.pp-home-about-feature__link {
position:relative;

  display:inline-flex;
  align-items:center;
  justify-content:flex-start;

  width:max-content;
  max-width:100%;
  min-width:0;

  gap:22px;

  margin:clamp(32px, 3vw, 44px) 0 0;
  padding:0 0 13px;

  border:0;

  color:var(--about-accent) !important;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:13px;
  line-height:1;
  font-weight:400;
  letter-spacing:.20em;
  text-transform:uppercase;
  text-decoration:none;

  transition:
    color .35s cubic-bezier(.22,1,.36,1);
}

.pp-home-about-feature__link::after {
content:"";

  position:absolute;
  left:0;
  bottom:0;

  width:100%;
  height:1px;

  background:rgba(165,134,103,.75);

  transform-origin:left center;
  transition:
    background-color .35s cubic-bezier(.22,1,.36,1),
    transform .35s cubic-bezier(.22,1,.36,1);
}

.pp-home-about-feature__link span {
display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;

  color:var(--about-accent);

  font-size:23px;
  line-height:1;

  transform:translateY(-1px);

  transition:
    color .35s cubic-bezier(.22,1,.36,1),
    transform .35s cubic-bezier(.22,1,.36,1);
}

.pp-home-about-feature__link:hover {
color:#ffffff !important;
}

.pp-home-about-feature__link:hover::after {
background:#ffffff;
  transform:scaleX(.86);
}

.pp-home-about-feature__link:hover span {
color:#ffffff;
  transform:translate(6px, -1px);
}

.pp-home-about-feature .reveal-up {
opacity:0;
  transform:translateY(28px);

  transition:
    opacity .8s ease,
    transform .8s cubic-bezier(.22,1,.36,1);
}

.pp-home-about-feature .reveal-up.is-visible,
.pp-home-about-feature.is-visible .reveal-up {
opacity:1;
  transform:translateY(0);
}

@media (min-width:1800px) {
  .pp-home-about-feature {
min-height:980px;
  }

  .pp-home-about-feature__shell {
width:min(1660px, calc(100% - 130px));
  }

  .pp-home-about-feature__card {
width:690px;
    min-height:660px;
  }

  .pp-home-about-feature__card h2 {
font-size:84px;
  }

  .pp-home-about-feature__card p {
font-size:22px;
  }
}

@media (min-width:1200px) and (max-width:1599px) {
  .pp-home-about-feature {
min-height:clamp(700px, 56.25vw, 900px);
  }

  .pp-home-about-feature__shell {
width:min(1420px, calc(100% - 70px));
  }

  .pp-home-about-feature__card {
width:min(620px, 47vw);
    min-height:clamp(500px, 38vw, 620px);

    padding:clamp(42px, 4.3vw, 64px);
  }

  .pp-home-about-feature__card h2 {
font-size:clamp(42px, 4.5vw, 72px);
  }
}

@media (min-width:992px) and (max-width:1199px) {
  .pp-home-about-feature {
min-height:700px;
  }

  .pp-home-about-feature__shell {
width:calc(100% - 52px);

    padding:70px 0;
  }

  .pp-home-about-feature__card {
width:min(590px, 58vw);
    min-height:auto;

    padding:48px;
  }

  .pp-home-about-feature__card h2 {
font-size:clamp(42px, 5.6vw, 62px);
  }

  .pp-home-about-feature__card p {
font-size:18px;
  }
}

/* ========================================================= TABLET E MOBILE FOTO 16:9 EM CIMA + CARD EM BAIXO ========================================================= */

@media (max-width:991px) {
  .pp-home-about-feature {
display:grid;

    grid-template-columns:minmax(0, 1fr);
    grid-template-rows:auto auto;

    align-items:stretch;

    width:100%;
    max-width:100%;

    min-height:0;

    margin:0;
    padding:0 0 clamp(48px, 7vw, 72px);

    overflow:hidden;

    background:#050505;
  }

  .pp-home-about-feature__bg {
position:relative;
    inset:auto;
    z-index:1;

    grid-column:1;
    grid-row:1;

    width:100%;
    height:auto;

    aspect-ratio:16 / 9;

    overflow:hidden;

    background:#111111;
  }

  .pp-home-about-feature__bg img {
position:absolute;
    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;
    object-position:center center;

    filter:
      saturate(.92)
      contrast(1.04)
      brightness(.90);
  }

  .pp-home-about-feature__overlay {
position:absolute;
    inset:0 auto auto 0;
    z-index:2;

    width:100%;
    height:auto;

    aspect-ratio:16 / 9;

    background:
      linear-gradient(
        180deg,
        rgba(0,0,0,.05) 0%,
        rgba(0,0,0,.12) 58%,
        rgba(0,0,0,.48) 100%
      );
  }

  .pp-home-about-feature__shell {
position:relative;
    z-index:3;

    grid-column:1;
    grid-row:2;

    display:block;

    width:calc(100% - clamp(28px, 6vw, 56px));
    min-height:0;

    margin:
      clamp(-46px, -4vw, -30px)
      auto
      0;

    padding:0;
  }

  .pp-home-about-feature__card {
width:100%;
    max-width:760px;
    min-height:0;

    margin:0 auto;
    padding:
      clamp(38px, 6vw, 54px)
      clamp(32px, 6vw, 50px)
      clamp(40px, 6vw, 56px);

    border-radius:clamp(24px, 4vw, 34px);

    background:
      radial-gradient(
        circle at 88% 14%,
        rgba(165,134,103,.10),
        transparent 32%
      ),
      #070707;

    box-shadow:
      0 26px 70px rgba(0,0,0,.34),
      inset 0 1px 0 rgba(255,255,255,.07);
  }

  .pp-home-about-feature__card h2 {
max-width:680px;

    font-size:clamp(43px, 8.7vw, 70px);
    line-height:.92;
  }

  .pp-home-about-feature__card p {
max-width:650px;

    margin-top:28px;

    font-size:clamp(18px, 2.5vw, 21px);
    line-height:1.55;
  }

  .pp-home-about-feature__link {
width:max-content;
    min-width:0;
    max-width:100%;

    margin-top:34px;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-home-about-feature {
padding-bottom:48px;
  }

  .pp-home-about-feature__bg {
aspect-ratio:16 / 9;
  }

  .pp-home-about-feature__bg img {
object-position:center center;
  }

  .pp-home-about-feature__overlay {
aspect-ratio:16 / 9;
  }

  .pp-home-about-feature__shell {
width:calc(100% - 26px);

    margin-top:-28px;
  }

  .pp-home-about-feature__card {
padding:
      34px
      25px
      38px;

    border-radius:25px;
  }

  .pp-home-about-feature__eyebrow {
gap:12px;

    margin-bottom:28px;

    font-size:10px;
    letter-spacing:.22em;
  }

  .pp-home-about-feature__eyebrow::after {
width:34px;
  }

  .pp-home-about-feature__card h2 {
max-width:100%;

    font-size:clamp(36px, 10.5vw, 52px);
    line-height:.94;
    letter-spacing:-.068em;
  }

  .pp-home-about-feature__card p {
margin-top:24px;

    font-size:16px;
    line-height:1.54;
  }

  .pp-home-about-feature__link {
width:max-content;
    max-width:100%;
    min-width:0;

    gap:18px;

    margin-top:30px;
    padding-bottom:11px;

    font-size:11px;
    letter-spacing:.15em;
  }

  .pp-home-about-feature__link span {
font-size:21px;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:480px) {
  .pp-home-about-feature {
padding-bottom:40px;
  }

  .pp-home-about-feature__shell {
width:calc(100% - 20px);

    margin-top:-22px;
  }

  .pp-home-about-feature__card {
padding:
      30px
      21px
      34px;

    border-radius:22px;
  }

  .pp-home-about-feature__card h2 {
font-size:clamp(33px, 10.3vw, 45px);
  }

  .pp-home-about-feature__card p {
font-size:15.5px;
  }

  .pp-home-about-feature__link {
gap:15px;

    font-size:10.5px;
    letter-spacing:.13em;
  }
}

@media (max-width:360px) {
  .pp-home-about-feature__shell {
width:calc(100% - 16px);
  }

  .pp-home-about-feature__card {
padding:
      28px
      18px
      32px;
  }

  .pp-home-about-feature__card h2 {
font-size:31px;
  }

  .pp-home-about-feature__card p {
font-size:15px;
  }

  .pp-home-about-feature__link {
gap:12px;

    font-size:10px;
    letter-spacing:.11em;
  }

  .pp-home-about-feature__link span {
font-size:19px;
  }
}

/* ========================================================= MOBILE/TABLET HORIZONTAL ========================================================= */

@media (max-width:991px) and (orientation:landscape) {
  .pp-home-about-feature__bg,
  .pp-home-about-feature__overlay {
aspect-ratio:16 / 9;
  }

  .pp-home-about-feature__shell {
width:min(760px, calc(100% - 46px));
  }

  .pp-home-about-feature__card {
padding:38px 42px 42px;
  }

  .pp-home-about-feature__card h2 {
font-size:clamp(40px, 7vw, 58px);
  }
}

@supports not (aspect-ratio:16 / 9) {
  @media (max-width:991px) {
    .pp-home-about-feature__bg {
height:0;
      padding-top:56.25%;
    }

    .pp-home-about-feature__overlay {
height:0;
      padding-top:56.25%;
    }
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-home-about-feature *,
  .pp-home-about-feature *::before,
  .pp-home-about-feature *::after {
transition-duration:.01ms;
    animation-duration:.01ms;
    animation-iteration-count:1;
  }

  .pp-home-about-feature .reveal-up {
opacity:1;
    transform:none;
  }
}

/* ========================================================= HOME — SOBRE NÓS / VERSÃO 1 DARK FULL IMAGE ========================================================= */

/* MOBILE */

/* SMALL MOBILE */

/* ========================================================= HOME — SOBRE NÓS / VERSÃO 2 LIGHT SPLIT ========================================================= */

/* MOBILE */

/* SMALL MOBILE */

/* ========================================================= HOME — DEPARTAMENTOS + LABORATÓRIO Fundo branco contínuo ========================================================= */

.pp-home-expertise-lab {
position:relative;
  width:100%;
  background:#ffffff;
  color:#050505;
  overflow:visible;
  isolation:isolate;
}

.pp-home-expertise-lab::before {
content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.12;
  background-image:
    linear-gradient(to right, rgba(0,0,0,.04) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(0,0,0,.03) 1px, transparent 1px);
  background-size:92px 92px;
}

.pp-home-expertise-lab > section {
position:relative;
  z-index:1;
}

/* ========================================================= HOME — ÁREAS DE ESPECIALIZAÇÃO RESPONSIVO PARA TODOS OS ECRÃS ========================================================= */

.pp-home-segments {
--seg-bg:#ffffff;
  --seg-text:#050505;
  --seg-muted:rgba(5,5,5,.32);
  --seg-muted-strong:rgba(5,5,5,.64);
  --seg-line:rgba(5,5,5,.11);
  --seg-accent:#A58667;
  --seg-card:#ffffff;

  position:relative;
  isolation:isolate;

  width:100%;
  min-width:0;
  min-height:112svh;

  margin:0;
  padding:0;

  overflow:visible;

  background:var(--seg-bg);
  color:var(--seg-text);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );
}

.pp-home-segments *,
.pp-home-segments *::before,
.pp-home-segments *::after {
box-sizing:border-box;
}

.pp-home-segments__sticky {
position:sticky;
  top:0;

  display:flex;
  align-items:center;

  width:100%;
  min-width:0;
  min-height:100svh;

  overflow:visible;

  background:var(--seg-bg);
}

.pp-home-segments__shell {
position:relative;
  z-index:2;

  display:grid;
  grid-template-columns:
    minmax(340px, 500px)
    minmax(0, 1fr);

  align-items:center;

  width:min(1840px, calc(100% - 64px));
  min-width:0;
  min-height:100svh;

  gap:clamp(52px, 5vw, 108px);

  margin:0 auto;

  padding:
    clamp(74px, 6vw, 112px)
    0
    clamp(72px, 5vw, 96px);

  overflow:visible;
}

.pp-home-segments__left {
display:flex;
  flex-direction:column;
  justify-content:center;

  min-width:0;
}

.pp-home-segments__eyebrow {
display:inline-flex;
  align-items:center;

  width:max-content;
  max-width:100%;

  gap:18px;

  margin:0 0 clamp(38px, 4vw, 66px);

  color:var(--seg-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(11px, .78vw, 13px);
  line-height:1;
  font-weight:400;
  letter-spacing:.22em;
  text-transform:uppercase;

  white-space:normal;
}

.pp-home-segments__eyebrow span {
display:block;
  flex:0 0 auto;

  width:56px;
  height:1px;

  background:var(--seg-accent);
}

.pp-home-segments__menu {
display:flex;
  flex-direction:column;
  align-items:flex-start;

  width:100%;
  min-width:0;

  gap:clamp(10px, .9vw, 16px);

  margin:0;
  padding:0;
}

.pp-home-segments__tab {
position:relative;

  display:inline-block;

  width:max-content;
  max-width:100%;

  margin:0;
  padding:0 0 .04em;

  overflow:visible;

  border:0;

  background:transparent;
  color:var(--seg-muted);

  cursor:pointer;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(58px, 5vw, 100px);
  line-height:.9;
  font-weight:400;
  letter-spacing:-.088em;
  text-align:left;

  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;

  transition:
    color .42s cubic-bezier(.22,1,.36,1),
    transform .42s cubic-bezier(.22,1,.36,1);
}

.pp-home-segments__tab::after {
content:"";

  position:absolute;
  left:0;
  bottom:-.035em;

  width:100%;
  height:2px;

  background:currentColor;

  transform:scaleX(0);
  transform-origin:left center;

  transition:
    transform .42s cubic-bezier(.22,1,.36,1);
}

.pp-home-segments__tab.is-active {
color:var(--seg-text);
  transform:translateX(5px);
}

.pp-home-segments__tab.is-active::after {
transform:scaleX(1);
}

.pp-home-segments__tab:focus {
outline:0;
}

.pp-home-segments__tab:focus-visible {
outline:2px solid var(--seg-accent);
  outline-offset:6px;
}

@media (hover:hover) and (pointer:fine) {
  .pp-home-segments__tab:hover {
color:var(--seg-text);
    transform:translateX(5px);
  }

  .pp-home-segments__tab:hover::after {
transform:scaleX(1);
  }
}

.pp-home-segments__right {
position:relative;

  width:100%;
  min-width:0;
  min-height:clamp(620px, 74svh, 900px);

  overflow:visible;
}

.pp-home-segments__media {
position:absolute;
  inset:0;

  width:100%;
  height:100%;

  overflow:hidden;

  background:#dedede;
}

.pp-home-segments__image {
position:absolute;
  inset:0;

  display:block;

  width:100%;
  height:100%;
  max-width:none;

  object-fit:cover;
  object-position:center center;

  opacity:0;

  filter:
    saturate(.97)
    contrast(1.025)
    brightness(.98);

  transform:
    translate3d(0, 24px, 0)
    scale(1.025);

  transform-origin:center;

  color:transparent;
  font-size:0;

  user-select:none;
  -webkit-user-select:none;
  -webkit-user-drag:none;

  backface-visibility:hidden;
  will-change:transform, opacity;

  transition:
    opacity .52s ease,
    filter .75s ease,
    transform .8s cubic-bezier(.22,1,.36,1);
}

.pp-home-segments__image.is-active {
opacity:1;

  transform:
    translate3d(0, 0, 0)
    scale(1.025);
}

.pp-home-segments__media::after {
content:"";

  position:absolute;
  inset:0;
  z-index:2;

  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,0) 0%,
      rgba(0,0,0,.06) 100%
    ),
    linear-gradient(
      90deg,
      rgba(0,0,0,.04) 0%,
      rgba(0,0,0,0) 48%
    );
}

.pp-home-segments__info {
position:absolute;
  right:clamp(28px, 3.2vw, 72px);
  bottom:clamp(-34px, -1.8vw, -22px);
  z-index:5;

  width:min(620px, 56%);
  min-width:0;
  min-height:clamp(270px, 19vw, 340px);

  overflow:hidden;

  background:var(--seg-card);

  box-shadow:
    0 34px 100px rgba(16,16,16,.16),
    inset 0 1px 0 rgba(255,255,255,.90);
}

.pp-home-segments__panel {
position:absolute;
  inset:0;

  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;

  width:100%;
  min-width:0;

  padding:clamp(36px, 3.2vw, 62px);

  opacity:0;
  visibility:hidden;
  pointer-events:none;

  transform:translateY(20px);

  transition:
    opacity .42s ease,
    visibility .42s ease,
    transform .52s cubic-bezier(.22,1,.36,1);
}

.pp-home-segments__panel.is-active {
opacity:1;
  visibility:visible;
  pointer-events:auto;

  transform:translateY(0);
}

.pp-home-segments__panel > span {
display:block;

  margin:0 0 clamp(14px, 1.15vw, 20px);

  color:var(--seg-accent);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:11px;
  line-height:1;
  letter-spacing:.32em;
}

.pp-home-segments__panel h3 {
width:100%;
  max-width:100%;

  margin:0;

  color:var(--seg-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(42px, 3.35vw, 68px);
  line-height:.9;
  font-weight:400;
  letter-spacing:-.08em;
  text-transform:uppercase;

  word-break:normal;
  overflow-wrap:break-word;
}

.pp-home-segments__panel p {
width:100%;
  max-width:500px;

  margin:clamp(18px, 1.45vw, 26px) 0 0;

  color:var(--seg-muted-strong);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(17px, 1.08vw, 21px);
  line-height:1.52;
  font-weight:400;
  letter-spacing:-.02em;

  word-break:normal;
  overflow-wrap:break-word;
}

.pp-home-segments__panel a {
position:relative;

  display:inline-flex;
  align-items:center;
  justify-content:flex-start;

  width:max-content;
  max-width:100%;

  gap:24px;

  margin:clamp(28px, 2.5vw, 42px) 0 0;
  padding:0 0 12px;

  border:0;
  border-bottom:1px solid rgba(165,134,103,.72);

  color:var(--seg-accent) !important;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1;
  font-weight:400;
  letter-spacing:.20em;
  text-transform:uppercase;
  text-decoration:none;

  white-space:nowrap;

  transition:
    color .35s cubic-bezier(.22,1,.36,1),
    border-color .35s cubic-bezier(.22,1,.36,1);
}

.pp-home-segments__panel a::after {
display:none;
}

.pp-home-segments__panel a i {
display:inline-flex;
  align-items:center;
  justify-content:center;

  flex:0 0 auto;

  color:var(--seg-accent);

  font-style:normal;
  font-size:23px;
  line-height:1;

  transform:translateY(-1px);

  transition:
    color .35s cubic-bezier(.22,1,.36,1),
    transform .35s cubic-bezier(.22,1,.36,1);
}

@media (hover:hover) and (pointer:fine) {
  .pp-home-segments__panel a:hover {
color:var(--seg-text) !important;
    border-color:var(--seg-text);
  }

  .pp-home-segments__panel a:hover i {
color:var(--seg-text);

    transform:
      translate(6px, -1px);
  }
}

@media (min-width:1800px) {
  .pp-home-segments__shell {
width:min(1860px, calc(100% - 100px));

    grid-template-columns:
      minmax(430px, 540px)
      minmax(0, 1fr);
  }

  .pp-home-segments__tab {
font-size:104px;
  }

  .pp-home-segments__right {
min-height:900px;
  }
}

@media (min-width:1200px) and (max-width:1599px) {
  .pp-home-segments__shell {
width:min(1500px, calc(100% - 54px));

    grid-template-columns:
      minmax(320px, 430px)
      minmax(0, 1fr);

    gap:clamp(42px, 4vw, 72px);
  }

  .pp-home-segments__tab {
font-size:clamp(54px, 5vw, 82px);
  }

  .pp-home-segments__right {
min-height:clamp(590px, 72svh, 760px);
  }

  .pp-home-segments__info {
width:min(570px, 58%);
  }
}

@media (max-width:1199px) {
  .pp-home-segments {
min-height:0;

    overflow:hidden;
  }

  .pp-home-segments__sticky {
position:relative;
    top:auto;

    display:block;

    min-height:0;

    overflow:hidden;
  }

  .pp-home-segments__shell {
grid-template-columns:minmax(0, 1fr);

    width:calc(100% - 48px);
    min-height:0;

    gap:clamp(46px, 6vw, 72px);

    padding:
      clamp(72px, 8vw, 100px)
      0
      clamp(76px, 8vw, 104px);
  }

  .pp-home-segments__left {
width:100%;
  }

  .pp-home-segments__eyebrow {
margin-bottom:clamp(34px, 5vw, 50px);
  }

  .pp-home-segments__menu {
display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));

    align-items:start;

    gap:
      clamp(16px, 2vw, 26px)
      clamp(24px, 4vw, 52px);
  }

  .pp-home-segments__tab {
width:max-content;
    max-width:100%;

    font-size:clamp(38px, 5.5vw, 60px);
    line-height:.94;
    letter-spacing:-.07em;
  }

  .pp-home-segments__right {
min-height:0;

    padding-bottom:clamp(170px, 20vw, 230px);
  }

  .pp-home-segments__media {
position:relative;
    inset:auto;

    width:100%;
    height:auto;

    aspect-ratio:16 / 9;
  }

  .pp-home-segments__info {
right:clamp(24px, 4vw, 44px);
    bottom:0;

    width:min(650px, 78%);
    min-height:clamp(250px, 30vw, 310px);
  }

  .pp-home-segments__panel {
padding:clamp(32px, 5vw, 50px);
  }

  .pp-home-segments__panel h3 {
font-size:clamp(38px, 5.5vw, 58px);
  }

  .pp-home-segments__panel p {
font-size:clamp(17px, 2vw, 20px);
  }
}

@media (min-width:768px) and (max-width:991px) {
  .pp-home-segments__shell {
width:calc(100% - 40px);
  }

  .pp-home-segments__menu {
grid-template-columns:repeat(2, minmax(0, 1fr));

    column-gap:42px;
  }

  .pp-home-segments__tab {
font-size:clamp(38px, 6.6vw, 54px);
  }

  .pp-home-segments__right {
padding-bottom:210px;
  }

  .pp-home-segments__info {
width:calc(100% - 48px);
    min-height:280px;
  }
}

/* ========================================================= MOBILE MENU COMPACTO + IMAGEM 16:9 + CARD EM BAIXO ========================================================= */

@media (max-width:767px) {
  .pp-home-segments {
width:100%;
    min-height:0;

    overflow:hidden;
  }

  .pp-home-segments__sticky {
position:relative;

    width:100%;
    min-height:0;

    overflow:hidden;
  }

  .pp-home-segments__shell {
display:grid;
    grid-template-columns:minmax(0, 1fr);

    width:calc(100% - 30px);
    min-height:0;

    gap:38px;

    padding:
      clamp(54px, 12vw, 70px)
      0
      clamp(60px, 12vw, 78px);
  }

  .pp-home-segments__left {
width:100%;
    min-width:0;
  }

  .pp-home-segments__eyebrow {
gap:12px;

    width:100%;
    max-width:100%;

    margin-bottom:32px;

    font-size:10px;
    line-height:1.3;
    letter-spacing:.19em;
  }

  .pp-home-segments__eyebrow span {
width:36px;
  }

  .pp-home-segments__menu {
display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));

    width:100%;

    gap:
      18px
      18px;
  }

  .pp-home-segments__tab {
display:block;

    width:max-content;
    max-width:100%;

    padding-bottom:5px;

    font-size:clamp(27px, 8.7vw, 40px);
    line-height:.96;
    letter-spacing:-.065em;

    white-space:normal;
    overflow-wrap:break-word;

    transform:none;
  }

  .pp-home-segments__tab.is-active {
transform:none;
  }

  .pp-home-segments__tab::after {
height:2px;
    bottom:0;
  }

  .pp-home-segments__right {
display:flex;
    flex-direction:column;

    width:100%;
    min-height:0;

    padding:0;

    overflow:hidden;
  }

  .pp-home-segments__media {
position:relative;
    inset:auto;

    flex:0 0 auto;

    width:100%;
    height:auto;
    min-height:0;

    aspect-ratio:16 / 9;

    overflow:hidden;
  }

  .pp-home-segments__image {
width:100%;
    height:100%;

    object-fit:cover;
    object-position:center center;

    transform:
      translate3d(0, 18px, 0)
      scale(1.02);
  }

  .pp-home-segments__image.is-active {
transform:
      translate3d(0, 0, 0)
      scale(1.02);
  }

  .pp-home-segments__info {
position:relative;
    right:auto;
    bottom:auto;

    display:grid;

    width:100%;
    min-height:0;

    margin:0;

    overflow:hidden;

    box-shadow:
      0 20px 52px rgba(16,16,16,.10),
      inset 0 1px 0 rgba(255,255,255,.90);

    border-top:1px solid var(--seg-line);
  }

  .pp-home-segments__panel {
position:relative;
    inset:auto;

    grid-column:1;
    grid-row:1;

    align-self:stretch;

    min-width:0;
    min-height:260px;

    padding:
      clamp(28px, 7vw, 38px)
      clamp(22px, 6vw, 32px)
      clamp(30px, 7vw, 40px);

    visibility:hidden;

    transform:translateY(14px);
  }

  .pp-home-segments__panel.is-active {
visibility:visible;

    transform:translateY(0);
  }

  .pp-home-segments__panel h3 {
font-size:clamp(34px, 9vw, 48px);
    line-height:.92;
    letter-spacing:-.07em;
  }

  .pp-home-segments__panel p {
max-width:100%;

    margin-top:18px;

    font-size:16px;
    line-height:1.52;
  }

  .pp-home-segments__panel a {
gap:18px;

    margin-top:28px;
    padding-bottom:10px;

    font-size:10.5px;
    letter-spacing:.16em;
  }

  .pp-home-segments__panel a i {
font-size:20px;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:480px) {
  .pp-home-segments__shell {
width:calc(100% - 24px);

    gap:32px;

    padding:
      52px
      0
      62px;
  }

  .pp-home-segments__eyebrow {
margin-bottom:28px;

    font-size:9.5px;
    letter-spacing:.17em;
  }

  .pp-home-segments__eyebrow span {
width:32px;
  }

  .pp-home-segments__menu {
gap:
      16px
      14px;
  }

  .pp-home-segments__tab {
font-size:clamp(25px, 8vw, 34px);
  }

  .pp-home-segments__panel {
min-height:250px;

    padding:
      27px
      21px
      31px;
  }

  .pp-home-segments__panel h3 {
font-size:clamp(31px, 8.7vw, 40px);
  }

  .pp-home-segments__panel p {
font-size:15.5px;
  }
}

@media (max-width:350px) {
  .pp-home-segments__shell {
width:calc(100% - 20px);
  }

  .pp-home-segments__menu {
column-gap:11px;
  }

  .pp-home-segments__tab {
font-size:24px;
  }

  .pp-home-segments__panel {
min-height:248px;

    padding:
      25px
      18px
      29px;
  }

  .pp-home-segments__panel h3 {
font-size:30px;
  }

  .pp-home-segments__panel p {
font-size:15px;
  }
}

/* ========================================================= MOBILE EM HORIZONTAL ========================================================= */

@media (max-width:900px) and (orientation:landscape) {
  .pp-home-segments__shell {
width:calc(100% - 42px);

    padding-top:58px;
    padding-bottom:68px;
  }

  .pp-home-segments__menu {
grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  .pp-home-segments__tab {
font-size:clamp(30px, 5.5vw, 42px);
  }

  .pp-home-segments__media {
aspect-ratio:16 / 7.5;
  }

  .pp-home-segments__panel {
min-height:230px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-home-segments__tab,
  .pp-home-segments__tab::after,
  .pp-home-segments__image,
  .pp-home-segments__panel,
  .pp-home-segments__panel a,
  .pp-home-segments__panel a i {
transition:none;
  }
}

/* ========================================================= HOME — LABORATÓRIO DE QUALIDADE RESPONSIVO / BOTÃO COMPACTO ========================================================= */

.pp-home-innovation-lab {
--lab-bg:#ffffff;
  --lab-text:#050505;
  --lab-muted:rgba(5,5,5,.68);
  --lab-line:rgba(5,5,5,.14);
  --lab-accent:#A58667;

  position:relative;
  isolation:isolate;

  width:100%;
  margin:0;

  padding:
    clamp(64px, 6vw, 110px)
    clamp(24px, 4.8vw, 92px)
    clamp(72px, 6.5vw, 120px);

  overflow:hidden;

  background:var(--lab-bg);
  color:var(--lab-text);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );
}

.pp-home-innovation-lab *,
.pp-home-innovation-lab *::before,
.pp-home-innovation-lab *::after {
box-sizing:border-box;
}

.pp-home-innovation-lab__top {
display:grid;
  grid-template-columns:
    minmax(0, 1.12fr)
    minmax(340px, .88fr);

  align-items:start;

  width:min(1720px, 100%);
  margin:0 auto clamp(46px, 4.5vw, 76px);

  gap:clamp(44px, 6vw, 110px);
}

.pp-home-innovation-lab__title-wrap {
min-width:0;
}

.pp-home-innovation-lab__eyebrow {
display:inline-flex;
  align-items:center;

  width:max-content;
  max-width:100%;

  gap:18px;

  margin:0 0 clamp(24px, 2.2vw, 36px);

  color:var(--lab-accent);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(11px, .8vw, 14px);
  line-height:1;
  font-weight:400;
  letter-spacing:.24em;
  text-transform:uppercase;
}

.pp-home-innovation-lab__eyebrow span {
display:block;
  flex:0 0 auto;

  width:56px;
  height:1px;

  background:var(--lab-accent);
}

.pp-home-innovation-lab h2 {
width:100%;
  max-width:1050px;

  margin:0;

  color:var(--lab-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(58px, 7vw, 126px);
  line-height:.88;
  font-weight:500;
  letter-spacing:-.086em;
  text-transform:uppercase;

  word-break:normal;
  overflow-wrap:normal;
}

.pp-home-innovation-lab__intro {
display:flex;
  flex-direction:column;
  align-items:flex-start;

  min-width:0;

  padding-top:clamp(12px, 1.5vw, 28px);
}

.pp-home-innovation-lab__intro p {
width:100%;
  max-width:640px;

  margin:0;

  color:var(--lab-muted);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(19px, 1.28vw, 25px);
  line-height:1.48;
  font-weight:400;
  letter-spacing:-.03em;

  word-break:normal;
  overflow-wrap:break-word;
}

.pp-home-innovation-lab__button {
position:relative;
  isolation:isolate;

  display:inline-flex;
  align-items:center;
  justify-content:space-between;

  width:auto;
  min-width:196px;
  max-width:100%;
  min-height:60px;

  gap:20px;

  margin:clamp(34px, 3.2vw, 52px) 0 0;
  padding:7px 9px 7px 25px;

  overflow:hidden;

  border:1px solid rgba(5,5,5,.18);
  border-radius:999px;

  background:rgba(5,5,5,.025);
  color:#050505 !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.85),
    0 14px 38px rgba(5,5,5,.07);

  text-decoration:none;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1;
  font-weight:400;
  letter-spacing:.14em;
  text-transform:uppercase;

  transition:
    color .38s cubic-bezier(.22,1,.36,1),
    border-color .38s cubic-bezier(.22,1,.36,1),
    background-color .38s cubic-bezier(.22,1,.36,1),
    box-shadow .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1);
}

.pp-home-innovation-lab__button::before {
content:"";

  position:absolute;
  inset:0;
  z-index:-1;

  border-radius:inherit;

  background:#050505;

  transform:translateY(105%);
  transition:transform .46s cubic-bezier(.22,1,.36,1);
}

.pp-home-innovation-lab__button::after {
display:none;
}

.pp-home-innovation-lab__button i {
position:relative;
  z-index:2;

  display:flex;
  align-items:center;
  justify-content:center;

  flex:0 0 44px;

  width:44px;
  height:44px;

  border-radius:50%;

  background:var(--lab-accent);
  color:#ffffff;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.26),
    0 8px 22px rgba(165,134,103,.24);

  transition:
    background-color .38s cubic-bezier(.22,1,.36,1),
    color .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1);
}

.pp-home-innovation-lab__button i::before {
content:"";

  position:absolute;
  left:50%;
  top:50%;

  width:15px;
  height:1px;

  background:currentColor;

  transform:translate(-54%, -50%);
}

.pp-home-innovation-lab__button i::after {
content:"";

  position:absolute;
  left:50%;
  top:50%;

  width:7px;
  height:7px;

  border-top:1px solid currentColor;
  border-right:1px solid currentColor;

  transform:
    translate(-5%, -50%)
    rotate(45deg);
}

@media (hover:hover) and (pointer:fine) {
  .pp-home-innovation-lab__button:hover {
color:#ffffff !important;
    border-color:#050505;

    transform:translateY(-2px);

    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.18),
      0 20px 50px rgba(5,5,5,.15);
  }

  .pp-home-innovation-lab__button:hover::before {
transform:translateY(0);
  }

  .pp-home-innovation-lab__button:hover i {
transform:translateX(3px);
  }
}

.pp-home-innovation-lab__button:focus-visible {
outline:2px solid var(--lab-accent);
  outline-offset:4px;
}

.pp-home-innovation-lab__grid {
display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));

  width:min(1720px, 100%);
  margin:0 auto;

  gap:clamp(14px, 1.2vw, 22px);
}

.pp-home-innovation-lab__card {
position:relative;

  display:block;

  min-width:0;
  min-height:clamp(410px, 32vw, 560px);

  margin:0;

  overflow:hidden;

  background:#e6e6e6;
  color:#ffffff;

  text-decoration:none;
}

.pp-home-innovation-lab__card figure {
position:absolute;
  inset:0;

  display:block;

  width:100%;
  height:100%;

  margin:0;

  overflow:hidden;

  background:#e6e6e6;
}

.pp-home-innovation-lab__card figure::after {
content:"";

  position:absolute;
  inset:0;
  z-index:2;

  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      rgba(0,0,0,0) 30%,
      rgba(0,0,0,.18) 62%,
      rgba(0,0,0,.72) 100%
    ),
    linear-gradient(
      90deg,
      rgba(0,0,0,.20) 0%,
      rgba(0,0,0,0) 65%
    );
}

.pp-home-innovation-lab__card img {
display:block;

  width:100%;
  height:100%;
  max-width:none;

  object-fit:cover;
  object-position:center;

  filter:
    saturate(.96)
    contrast(1.03)
    brightness(.96);

  transform:scale(1.01);

  transition:
    transform .9s cubic-bezier(.22,1,.36,1),
    filter .5s ease;
}

@media (hover:hover) and (pointer:fine) {
  .pp-home-innovation-lab__card:hover img {
transform:scale(1.055);

    filter:
      saturate(1)
      contrast(1.04)
      brightness(.90);
  }
}

.pp-home-innovation-lab__card-bottom {
position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:4;

  display:flex;
  align-items:flex-end;
  justify-content:space-between;

  min-width:0;

  gap:22px;

  padding:clamp(26px, 2.4vw, 44px);
}

.pp-home-innovation-lab__card h3 {
width:100%;
  max-width:390px;

  margin:0;

  color:#ffffff;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(30px, 2.45vw, 50px);
  line-height:.94;
  font-weight:500;
  letter-spacing:-.065em;
  text-transform:uppercase;

  word-break:normal;
  overflow-wrap:break-word;
}

.pp-home-innovation-lab__card span {
display:flex;
  align-items:center;
  justify-content:center;

  flex:0 0 48px;

  width:48px;
  height:48px;

  border:1px solid rgba(255,255,255,.34);
  border-radius:50%;

  background:rgba(255,255,255,.12);
  color:#ffffff;

  font-size:24px;
  line-height:1;

  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);

  transition:
    background-color .35s cubic-bezier(.22,1,.36,1),
    transform .35s cubic-bezier(.22,1,.36,1);
}

@media (hover:hover) and (pointer:fine) {
  .pp-home-innovation-lab__card:hover span {
background:var(--lab-accent);
    transform:translateX(5px);
  }
}

.pp-home-innovation-lab .reveal-up {
opacity:0;
  transform:translateY(30px);

  transition:
    opacity .82s ease,
    transform .82s cubic-bezier(.22,1,.36,1);
}

.pp-home-innovation-lab .reveal-up.is-visible,
.pp-home-innovation-lab.is-visible .reveal-up {
opacity:1;
  transform:translateY(0);
}

@media (min-width:1800px) {
  .pp-home-innovation-lab {
padding-left:96px;
    padding-right:96px;
  }

  .pp-home-innovation-lab__top,
  .pp-home-innovation-lab__grid {
width:min(1760px, 100%);
  }

  .pp-home-innovation-lab h2 {
font-size:130px;
  }

  .pp-home-innovation-lab__intro p {
font-size:25px;
  }

  .pp-home-innovation-lab__card {
min-height:570px;
  }
}

@media (min-width:1200px) and (max-width:1599px) {
  .pp-home-innovation-lab {
padding-left:clamp(38px, 4vw, 64px);
    padding-right:clamp(38px, 4vw, 64px);
  }

  .pp-home-innovation-lab__top {
grid-template-columns:
      minmax(0, 1.08fr)
      minmax(330px, .92fr);

    gap:clamp(42px, 5vw, 76px);
  }

  .pp-home-innovation-lab h2 {
font-size:clamp(62px, 7vw, 110px);
  }

  .pp-home-innovation-lab__intro p {
font-size:clamp(19px, 1.35vw, 23px);
  }
}

@media (min-width:992px) and (max-width:1199px) {
  .pp-home-innovation-lab {
padding:
      72px
      34px
      82px;
  }

  .pp-home-innovation-lab__top {
grid-template-columns:1fr;
    gap:34px;

    margin-bottom:52px;
  }

  .pp-home-innovation-lab h2 {
max-width:850px;

    font-size:clamp(62px, 9vw, 96px);
  }

  .pp-home-innovation-lab__intro {
padding-top:0;
  }

  .pp-home-innovation-lab__intro p {
max-width:760px;

    font-size:20px;
  }

  .pp-home-innovation-lab__button {
min-width:198px;
  }

  .pp-home-innovation-lab__grid {
grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .pp-home-innovation-lab__card {
min-height:460px;
  }

  .pp-home-innovation-lab__card:first-child {
grid-column:1 / -1;

    min-height:clamp(460px, 53vw, 620px);
  }
}

@media (min-width:768px) and (max-width:991px) {
  .pp-home-innovation-lab {
padding:
      68px
      28px
      78px;
  }

  .pp-home-innovation-lab__top {
grid-template-columns:1fr;
    gap:30px;

    margin-bottom:46px;
  }

  .pp-home-innovation-lab__intro {
padding-top:0;
  }

  .pp-home-innovation-lab h2 {
max-width:760px;

    font-size:clamp(56px, 10vw, 84px);
  }

  .pp-home-innovation-lab__intro p {
max-width:700px;

    font-size:19px;
  }

  .pp-home-innovation-lab__button {
min-width:194px;
    min-height:58px;
  }

  .pp-home-innovation-lab__grid {
grid-template-columns:repeat(2, minmax(0, 1fr));

    gap:18px;
  }

  .pp-home-innovation-lab__card {
min-height:430px;
  }

  .pp-home-innovation-lab__card:first-child {
grid-column:1 / -1;

    min-height:clamp(430px, 60vw, 580px);
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-home-innovation-lab {
padding:
      clamp(54px, 10vw, 70px)
      clamp(18px, 5vw, 26px)
      clamp(62px, 11vw, 80px);
  }

  .pp-home-innovation-lab__top {
display:grid;
    grid-template-columns:1fr;

    gap:28px;

    margin-bottom:38px;
  }

  .pp-home-innovation-lab__eyebrow {
gap:12px;

    margin-bottom:22px;

    font-size:10px;
    letter-spacing:.21em;
  }

  .pp-home-innovation-lab__eyebrow span {
width:38px;
  }

  .pp-home-innovation-lab h2 {
max-width:100%;

    font-size:clamp(42px, 13.2vw, 68px);
    line-height:.91;
    letter-spacing:-.075em;
  }

  .pp-home-innovation-lab__intro {
align-items:flex-start;

    padding-top:0;
  }

  .pp-home-innovation-lab__intro p {
max-width:100%;

    font-size:clamp(16px, 4.35vw, 18px);
    line-height:1.54;
    letter-spacing:-.02em;
  }

  .pp-home-innovation-lab__button {
width:clamp(188px, 54vw, 218px);
    min-width:0;
    max-width:100%;
    min-height:54px;

    gap:15px;

    margin-top:28px;
    padding:6px 7px 6px 21px;

    justify-content:space-between;

    font-size:10.5px;
    letter-spacing:.13em;
  }

  .pp-home-innovation-lab__button i {
flex-basis:40px;

    width:40px;
    height:40px;
  }

  .pp-home-innovation-lab__grid {
grid-template-columns:1fr;

    gap:16px;
  }

  .pp-home-innovation-lab__card,
  .pp-home-innovation-lab__card:first-child {
grid-column:auto;

    min-height:0;
    aspect-ratio:4 / 5;
  }

  .pp-home-innovation-lab__card-bottom {
padding:26px 22px;
  }

  .pp-home-innovation-lab__card h3 {
max-width:290px;

    font-size:clamp(30px, 9.5vw, 44px);
  }

  .pp-home-innovation-lab__card span {
flex-basis:42px;

    width:42px;
    height:42px;

    font-size:21px;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:420px) {
  .pp-home-innovation-lab {
padding:
      52px
      17px
      66px;
  }

  .pp-home-innovation-lab h2 {
font-size:clamp(38px, 12.5vw, 48px);
  }

  .pp-home-innovation-lab__intro p {
font-size:16px;
  }

  .pp-home-innovation-lab__button {
width:190px;
    min-height:52px;

    padding:
      5px
      6px
      5px
      19px;

    font-size:10px;
    letter-spacing:.12em;
  }

  .pp-home-innovation-lab__button i {
flex-basis:38px;

    width:38px;
    height:38px;
  }

  .pp-home-innovation-lab__button i::before {
width:13px;
  }

  .pp-home-innovation-lab__button i::after {
width:6px;
    height:6px;
  }

  .pp-home-innovation-lab__card,
  .pp-home-innovation-lab__card:first-child {
aspect-ratio:4 / 5;
  }

  .pp-home-innovation-lab__card-bottom {
padding:24px 20px;
  }

  .pp-home-innovation-lab__card h3 {
font-size:clamp(28px, 9.5vw, 38px);
  }
}

@media (max-width:340px) {
  .pp-home-innovation-lab {
padding-left:14px;
    padding-right:14px;
  }

  .pp-home-innovation-lab h2 {
font-size:36px;
  }

  .pp-home-innovation-lab__button {
width:184px;

    padding-left:17px;
  }

  .pp-home-innovation-lab__card-bottom {
padding:21px 17px;
  }

  .pp-home-innovation-lab__card h3 {
font-size:28px;
  }
}

/* ========================================================= MOBILE EM HORIZONTAL ========================================================= */

@media (max-width:767px) and (orientation:landscape) {
  .pp-home-innovation-lab {
padding-left:28px;
    padding-right:28px;
  }

  .pp-home-innovation-lab h2 {
max-width:680px;

    font-size:clamp(44px, 8vw, 62px);
  }

  .pp-home-innovation-lab__intro p {
max-width:650px;
  }

  .pp-home-innovation-lab__button {
width:200px;
  }

  .pp-home-innovation-lab__grid {
grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .pp-home-innovation-lab__card,
  .pp-home-innovation-lab__card:first-child {
grid-column:auto;

    aspect-ratio:4 / 3;
  }

  .pp-home-innovation-lab__card:last-child {
grid-column:1 / -1;

    aspect-ratio:16 / 8;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-home-innovation-lab *,
  .pp-home-innovation-lab *::before,
  .pp-home-innovation-lab *::after {
scroll-behavior:auto;
    transition-duration:.01ms;
    animation-duration:.01ms;
    animation-iteration-count:1;
  }

  .pp-home-innovation-lab .reveal-up {
opacity:1;
    transform:none;
  }
}

/* ========================================================= HOME — SUSTENTABILIDADE RESPONSIVO / CLEAN / PP TÊXTEIS ========================================================= */

.pp-home-sustainability-clean {
--sus-bg:#ffffff;
  --sus-text:#050505;
  --sus-muted:rgba(5,5,5,.64);
  --sus-line:rgba(5,5,5,.12);
  --sus-accent:var(--primary, #A58667);

  position:relative;
  isolation:isolate;

  width:100%;
  margin:0;

  overflow:hidden;

  background:var(--sus-bg);
  color:var(--sus-text);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );
}

.pp-home-sustainability-clean *,
.pp-home-sustainability-clean *::before,
.pp-home-sustainability-clean *::after {
box-sizing:border-box;
}

.pp-home-sustainability-clean__shell {
width:100%;
  max-width:none;

  margin:0;
  padding:0;
}

.pp-home-sustainability-clean__top {
display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
  align-items:stretch;

  width:100%;
  min-height:clamp(660px, 46vw, 840px);

  margin:0;

  background:#ffffff;
}

.pp-home-sustainability-clean__content {
display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;

  min-width:0;

  padding:
    clamp(92px, 8vw, 140px)
    clamp(40px, 4.4vw, 82px)
    clamp(82px, 7vw, 120px)
    clamp(42px, 5vw, 92px);
}

.pp-home-sustainability-clean__eyebrow {
display:inline-flex;
  align-items:center;

  width:max-content;
  max-width:100%;

  gap:18px;

  margin:0 0 clamp(42px, 4vw, 68px);

  color:var(--sus-accent);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(11px, .78vw, 14px);
  line-height:1;
  font-weight:400;
  letter-spacing:.22em;
  text-transform:uppercase;
  white-space:nowrap;
}

.pp-home-sustainability-clean__eyebrow span {
display:block;
  flex:0 0 auto;

  width:52px;
  height:1px;

  background:var(--sus-accent);
  opacity:.9;
}

.pp-home-sustainability-clean__eyebrow i {
display:none;
}

.pp-home-sustainability-clean h2 {
display:block;

  width:100%;
  max-width:720px;

  margin:0;

  color:var(--sus-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(54px, 4.35vw, 92px);
  line-height:.91;
  font-weight:500;
  letter-spacing:-.07em;
  text-transform:uppercase;

  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;
  hyphens:none;
}

.pp-home-sustainability-clean h2 span {
color:var(--sus-accent);
}

.pp-home-sustainability-clean__content > p {
width:100%;
  max-width:650px;

  margin:clamp(34px, 3vw, 48px) 0 0;

  color:var(--sus-muted);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(17px, 1.05vw, 21px);
  line-height:1.58;
  font-weight:400;
  letter-spacing:-.02em;

  word-break:normal;
  overflow-wrap:break-word;
}

.pp-home-sustainability-clean__button {
position:relative;
  isolation:isolate;

  display:inline-flex;
  align-items:center;
  justify-content:space-between;

  width:auto;
  min-width:190px;
  max-width:220px;
  min-height:60px;

  gap:20px;

  margin:clamp(36px, 3.4vw, 56px) 0 0;
  padding:7px 8px 7px 26px;

  overflow:hidden;

  border:1px solid rgba(5,5,5,.18);
  border-radius:999px;

  background:rgba(5,5,5,.025);
  color:#050505;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.86),
    0 14px 38px rgba(5,5,5,.07);

  text-decoration:none;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1;
  font-weight:400;
  letter-spacing:.14em;
  text-transform:uppercase;
  white-space:nowrap;

  transition:
    color .38s cubic-bezier(.22,1,.36,1),
    border-color .38s cubic-bezier(.22,1,.36,1),
    background-color .38s cubic-bezier(.22,1,.36,1),
    box-shadow .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1);
}

.pp-home-sustainability-clean__button::before {
content:"";

  position:absolute;
  inset:0;
  z-index:-1;

  border-radius:inherit;

  background:#050505;

  transform:translateY(105%);
  transition:transform .46s cubic-bezier(.22,1,.36,1);
}

.pp-home-sustainability-clean__button::after {
display:none;
}

.pp-home-sustainability-clean__button span {
position:relative;
  z-index:2;

  display:block;

  flex:0 0 auto;
}

.pp-home-sustainability-clean__button i {
position:relative;
  z-index:2;

  display:flex;
  align-items:center;
  justify-content:center;

  flex:0 0 44px;

  width:44px;
  height:44px;

  border-radius:50%;

  background:var(--sus-accent);
  color:#ffffff;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.25),
    0 8px 22px rgba(165,134,103,.24);

  transition:
    transform .38s cubic-bezier(.22,1,.36,1),
    background-color .38s cubic-bezier(.22,1,.36,1);
}

.pp-home-sustainability-clean__button i::before {
content:"";

  position:absolute;
  left:50%;
  top:50%;

  width:15px;
  height:1px;

  background:currentColor;

  transform:translate(-54%, -50%);
}

.pp-home-sustainability-clean__button i::after {
content:"";

  position:absolute;
  left:50%;
  top:50%;

  width:7px;
  height:7px;

  border-top:1px solid currentColor;
  border-right:1px solid currentColor;

  transform:
    translate(-5%, -50%)
    rotate(45deg);
}

@media (hover:hover) and (pointer:fine) {
  .pp-home-sustainability-clean__button:hover {
color:#ffffff;
    border-color:#050505;

    transform:translateY(-2px);

    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.18),
      0 20px 50px rgba(5,5,5,.15);
  }

  .pp-home-sustainability-clean__button:hover::before {
transform:translateY(0);
  }

  .pp-home-sustainability-clean__button:hover i {
transform:translateX(3px);
  }
}

.pp-home-sustainability-clean__button:focus-visible {
outline:2px solid var(--sus-accent);
  outline-offset:4px;
}

.pp-home-sustainability-clean__media {
position:relative;

  display:block;

  width:100%;
  height:100%;
  min-height:clamp(660px, 46vw, 840px);

  margin:0;

  overflow:hidden;

  background:#d8ddd8;

  clip-path:polygon(
    10% 0,
    100% 0,
    100% 100%,
    0 100%
  );
}

.pp-home-sustainability-clean__media::after {
content:"";

  position:absolute;
  inset:0;
  z-index:2;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(255,255,255,.12) 0%,
      rgba(255,255,255,0) 27%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0) 54%,
      rgba(0,0,0,.12) 100%
    );
}

.pp-home-sustainability-clean__media img {
display:block;

  width:100%;
  height:100%;
  min-height:clamp(660px, 46vw, 840px);

  object-fit:cover;
  object-position:center;

  filter:
    saturate(1.03)
    contrast(1.03);

  transform:scale(1.01);

  transition:transform .9s cubic-bezier(.22,1,.36,1);
}

@media (hover:hover) and (pointer:fine) {
  .pp-home-sustainability-clean__media:hover img {
transform:scale(1.045);
  }
}

.pp-home-sustainability-clean__reverse {
display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
  align-items:stretch;

  width:100%;
  min-height:clamp(660px, 46vw, 860px);

  background:#ffffff;

  border-top:1px solid var(--sus-line);
}

.pp-home-sustainability-clean__reverse-media {
position:relative;

  display:block;

  width:100%;
  height:100%;
  min-height:clamp(660px, 46vw, 860px);

  margin:0;

  overflow:hidden;

  background:#d8ddd8;

  clip-path:polygon(
    0 0,
    100% 0,
    90% 100%,
    0 100%
  );
}

.pp-home-sustainability-clean__reverse-media::after {
content:"";

  position:absolute;
  inset:0;
  z-index:2;

  pointer-events:none;

  background:
    linear-gradient(
      270deg,
      rgba(255,255,255,.12) 0%,
      rgba(255,255,255,0) 27%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0) 52%,
      rgba(0,0,0,.12) 100%
    );
}

.pp-home-sustainability-clean__reverse-media img,
.pp-home-sustainability-clean__reverse-media video {
display:block;

  width:100%;
  height:100%;
  min-height:clamp(660px, 46vw, 860px);

  object-fit:cover;
  object-position:center;

  filter:
    saturate(1.03)
    contrast(1.03);

  transform:scale(1.01);
}

.pp-home-sustainability-clean__reverse-media video {
border:0;
}

.pp-home-sustainability-clean__reverse-content {
display:flex;
  flex-direction:column;
  justify-content:center;

  min-width:0;

  padding:
    clamp(82px, 7vw, 132px)
    clamp(42px, 5.2vw, 102px)
    clamp(82px, 7vw, 132px)
    clamp(62px, 6vw, 124px);
}

.pp-home-sustainability-clean__reverse-head {
width:100%;
  max-width:780px;

  margin:0 0 clamp(44px, 4.2vw, 74px);
}

.pp-home-sustainability-clean__reverse-head
.pp-home-sustainability-clean__eyebrow {
margin-bottom:clamp(30px, 2.8vw, 48px);
}

.pp-home-sustainability-clean__reverse-head h3 {
width:100%;
  max-width:740px;

  margin:0;

  color:var(--sus-text);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(48px, 4.2vw, 88px);
  line-height:.92;
  font-weight:500;
  letter-spacing:-.066em;
  text-transform:uppercase;

  word-break:normal;
  overflow-wrap:normal;
}

.pp-home-sustainability-clean__reverse-head h3 span {
color:var(--sus-accent);
}

.pp-home-sustainability-clean__items {
display:grid;
  grid-template-columns:1fr;

  width:100%;
  margin:0;

  border-top:1px solid var(--sus-line);
  border-bottom:1px solid var(--sus-line);

  background:#ffffff;
}

.pp-home-sustainability-clean__item {
position:relative;

  display:grid;
  grid-template-columns:72px minmax(0, 1fr);
  align-items:start;

  min-width:0;

  gap:clamp(28px, 2.4vw, 44px);

  padding:clamp(36px, 3vw, 54px) 0;

  border-bottom:1px solid var(--sus-line);

  background:#ffffff;
}

.pp-home-sustainability-clean__item:last-child {
border-bottom:0;
}

.pp-home-sustainability-clean__icon {
width:58px;
  height:58px;

  margin:0;

  color:var(--sus-accent);

  transform:translateY(2px);
}

.pp-home-sustainability-clean__icon svg {
display:block;

  width:100%;
  height:100%;

  fill:none;
  stroke:currentColor;
  stroke-width:1.35;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.pp-home-sustainability-clean__item h4,
.pp-home-sustainability-clean__item h3 {
margin:0;

  color:#050505;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(32px, 2.35vw, 48px);
  line-height:1.02;
  font-weight:500;
  letter-spacing:-.06em;

  word-break:normal;
  overflow-wrap:break-word;
}

.pp-home-sustainability-clean__item p {
width:100%;
  max-width:720px;

  margin:clamp(18px, 1.4vw, 26px) 0 0;

  color:var(--sus-muted);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(18px, 1.18vw, 23px);
  line-height:1.58;
  font-weight:400;
  letter-spacing:-.02em;

  word-break:normal;
  overflow-wrap:break-word;
}

@media (min-width:1800px) {
  .pp-home-sustainability-clean h2 {
max-width:760px;

    font-size:96px;
  }

  .pp-home-sustainability-clean__content {
padding-left:clamp(86px, 5.4vw, 112px);
  }

  .pp-home-sustainability-clean__reverse-content {
padding-left:clamp(94px, 6vw, 132px);
    padding-right:clamp(80px, 5.5vw, 118px);
  }
}

@media (min-width:1181px) and (max-width:1599px) {
  .pp-home-sustainability-clean h2 {
max-width:630px;

    font-size:clamp(52px, 4.05vw, 78px);
  }

  .pp-home-sustainability-clean__content {
padding-left:clamp(46px, 4vw, 72px);
    padding-right:clamp(30px, 3vw, 54px);
  }

  .pp-home-sustainability-clean__content > p {
max-width:590px;
  }

  .pp-home-sustainability-clean__reverse-head h3 {
max-width:650px;

    font-size:clamp(42px, 3.8vw, 74px);
  }

  .pp-home-sustainability-clean__item {
grid-template-columns:66px minmax(0, 1fr);

    gap:28px;
  }

  .pp-home-sustainability-clean__icon {
width:52px;
    height:52px;
  }

  .pp-home-sustainability-clean__item h4,
  .pp-home-sustainability-clean__item h3 {
font-size:clamp(31px, 2.15vw, 43px);
  }

  .pp-home-sustainability-clean__item p {
font-size:clamp(17px, 1.08vw, 21px);
  }
}

@media (max-width:1180px) {
  .pp-home-sustainability-clean__top {
grid-template-columns:1fr;

    min-height:0;
  }

  .pp-home-sustainability-clean__content {
padding:
      clamp(74px, 8vw, 104px)
      clamp(28px, 5vw, 56px)
      clamp(52px, 6vw, 72px);
  }

  .pp-home-sustainability-clean h2 {
max-width:900px;

    font-size:clamp(48px, 7.7vw, 86px);
  }

  .pp-home-sustainability-clean__content > p {
max-width:760px;
  }

  .pp-home-sustainability-clean__media {
min-height:0;
    height:auto;
    aspect-ratio:16 / 9;

    clip-path:none;
  }

  .pp-home-sustainability-clean__media img {
min-height:0;
    height:100%;
  }

  .pp-home-sustainability-clean__reverse {
grid-template-columns:1fr;

    min-height:0;
  }

  .pp-home-sustainability-clean__reverse-media {
order:1;

    min-height:0;
    height:auto;
    aspect-ratio:16 / 9;

    clip-path:none;
  }

  .pp-home-sustainability-clean__reverse-media img,
  .pp-home-sustainability-clean__reverse-media video {
min-height:0;
    height:100%;
  }

  .pp-home-sustainability-clean__reverse-content {
order:2;

    padding:
      clamp(64px, 8vw, 92px)
      clamp(28px, 5vw, 56px)
      clamp(70px, 8vw, 96px);
  }

  .pp-home-sustainability-clean__reverse-head h3 {
max-width:900px;

    font-size:clamp(44px, 7.7vw, 82px);
  }

  .pp-home-sustainability-clean__item {
grid-template-columns:66px minmax(0, 1fr);
  }

  .pp-home-sustainability-clean__item h4,
  .pp-home-sustainability-clean__item h3 {
font-size:clamp(31px, 4vw, 46px);
  }

  .pp-home-sustainability-clean__item p {
font-size:clamp(17px, 2vw, 21px);
  }
}

@media (max-width:820px) {
  .pp-home-sustainability-clean__content {
padding:
      68px
      24px
      46px;
  }

  .pp-home-sustainability-clean__eyebrow {
gap:14px;

    margin-bottom:34px;

    font-size:11px;
  }

  .pp-home-sustainability-clean__eyebrow span {
width:38px;
  }

  .pp-home-sustainability-clean h2 {
max-width:100%;

    font-size:clamp(42px, 8.5vw, 68px);
    line-height:.94;
    letter-spacing:-.062em;
  }

  .pp-home-sustainability-clean__content > p {
margin-top:30px;

    font-size:18px;
  }

  .pp-home-sustainability-clean__reverse-content {
padding:
      58px
      24px
      66px;
  }

  .pp-home-sustainability-clean__reverse-head {
margin-bottom:42px;
  }

  .pp-home-sustainability-clean__reverse-head h3 {
font-size:clamp(38px, 8.5vw, 66px);
    line-height:.94;
  }

  .pp-home-sustainability-clean__item {
grid-template-columns:54px minmax(0, 1fr);

    gap:20px;

    padding:32px 0;
  }

  .pp-home-sustainability-clean__icon {
width:44px;
    height:44px;
  }

  .pp-home-sustainability-clean__item h4,
  .pp-home-sustainability-clean__item h3 {
font-size:clamp(28px, 5.5vw, 40px);
  }

  .pp-home-sustainability-clean__item p {
font-size:17px;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-home-sustainability-clean {
overflow:hidden;
  }

  .pp-home-sustainability-clean__content {
padding:
      clamp(56px, 12vw, 68px)
      clamp(18px, 5vw, 24px)
      clamp(40px, 9vw, 52px);
  }

  .pp-home-sustainability-clean__eyebrow {
gap:12px;

    margin-bottom:30px;

    font-size:10px;
    letter-spacing:.21em;
  }

  .pp-home-sustainability-clean__eyebrow span {
width:36px;
  }

  .pp-home-sustainability-clean h2 {
width:100%;
    max-width:100%;

    font-size:clamp(29px, 8.8vw, 52px);
    line-height:.95;
    letter-spacing:-.065em;

    white-space:normal;
    word-break:normal;
    overflow-wrap:normal;
  }

  .pp-home-sustainability-clean__content > p {
max-width:100%;

    margin-top:28px;

    font-size:clamp(16px, 4.25vw, 18px);
    line-height:1.56;
  }

  .pp-home-sustainability-clean__button {
width:clamp(180px, 48vw, 205px);
    min-width:0;
    max-width:100%;
    min-height:54px;

    gap:14px;

    margin-top:28px;
    padding:
      6px
      7px
      6px
      20px;

    font-size:10.5px;
    letter-spacing:.13em;
  }

  .pp-home-sustainability-clean__button i {
flex-basis:40px;

    width:40px;
    height:40px;
  }

  .pp-home-sustainability-clean__media,
  .pp-home-sustainability-clean__reverse-media {
width:100%;
    height:auto;
    min-height:0;

    aspect-ratio:16 / 9;
  }

  .pp-home-sustainability-clean__media img,
  .pp-home-sustainability-clean__reverse-media img,
  .pp-home-sustainability-clean__reverse-media video {
width:100%;
    height:100%;
    min-height:0;

    object-fit:cover;
    object-position:center;
  }

  .pp-home-sustainability-clean__reverse-content {
padding:
      52px
      clamp(18px, 5vw, 24px)
      60px;
  }

  .pp-home-sustainability-clean__reverse-head {
margin-bottom:38px;
  }

  .pp-home-sustainability-clean__reverse-head
  .pp-home-sustainability-clean__eyebrow {
margin-bottom:26px;
  }

  .pp-home-sustainability-clean__reverse-head h3 {
width:100%;
    max-width:100%;

    font-size:clamp(32px, 9vw, 52px);
    line-height:.95;
    letter-spacing:-.06em;
  }

  .pp-home-sustainability-clean__item {
grid-template-columns:44px minmax(0, 1fr);

    gap:15px;

    padding:28px 0;
  }

  .pp-home-sustainability-clean__icon {
width:36px;
    height:36px;
  }

  .pp-home-sustainability-clean__item h4,
  .pp-home-sustainability-clean__item h3 {
font-size:clamp(25px, 7vw, 32px);
    line-height:1;
    letter-spacing:-.05em;
  }

  .pp-home-sustainability-clean__item p {
margin-top:14px;

    font-size:16px;
    line-height:1.52;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:420px) {
  .pp-home-sustainability-clean__content {
padding:
      54px
      18px
      40px;
  }

  .pp-home-sustainability-clean h2 {
font-size:clamp(28px, 8.65vw, 36px);
    letter-spacing:-.064em;
  }

  .pp-home-sustainability-clean__content > p {
font-size:16px;
  }

  .pp-home-sustainability-clean__button {
width:184px;
    min-height:52px;

    padding:
      5px
      6px
      5px
      18px;

    font-size:10px;
    letter-spacing:.12em;
  }

  .pp-home-sustainability-clean__button i {
flex-basis:38px;

    width:38px;
    height:38px;
  }

  .pp-home-sustainability-clean__button i::before {
width:13px;
  }

  .pp-home-sustainability-clean__button i::after {
width:6px;
    height:6px;
  }

  .pp-home-sustainability-clean__reverse-content {
padding:
      48px
      18px
      56px;
  }

  .pp-home-sustainability-clean__reverse-head h3 {
font-size:clamp(31px, 9vw, 38px);
  }

  .pp-home-sustainability-clean__item {
grid-template-columns:40px minmax(0, 1fr);

    gap:13px;

    padding:26px 0;
  }

  .pp-home-sustainability-clean__icon {
width:33px;
    height:33px;
  }

  .pp-home-sustainability-clean__item h4,
  .pp-home-sustainability-clean__item h3 {
font-size:25px;
  }

  .pp-home-sustainability-clean__item p {
font-size:15.5px;
  }
}

@media (max-width:340px) {
  .pp-home-sustainability-clean__content,
  .pp-home-sustainability-clean__reverse-content {
padding-left:14px;
    padding-right:14px;
  }

  .pp-home-sustainability-clean h2 {
font-size:28px;
  }

  .pp-home-sustainability-clean__button {
width:178px;
  }

  .pp-home-sustainability-clean__item {
grid-template-columns:36px minmax(0, 1fr);

    gap:11px;
  }

  .pp-home-sustainability-clean__icon {
width:30px;
    height:30px;
  }

  .pp-home-sustainability-clean__item h4,
  .pp-home-sustainability-clean__item h3 {
font-size:23px;
  }
}

/* ========================================================= MOBILE EM HORIZONTAL ========================================================= */

@media (max-width:767px) and (orientation:landscape) {
  .pp-home-sustainability-clean__content {
padding-left:28px;
    padding-right:28px;
  }

  .pp-home-sustainability-clean h2 {
max-width:680px;

    font-size:clamp(38px, 7vw, 52px);
  }

  .pp-home-sustainability-clean__content > p {
max-width:650px;
  }

  .pp-home-sustainability-clean__button {
width:190px;
  }

  .pp-home-sustainability-clean__media,
  .pp-home-sustainability-clean__reverse-media {
aspect-ratio:16 / 7;
  }

  .pp-home-sustainability-clean__reverse-content {
padding-left:28px;
    padding-right:28px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-home-sustainability-clean *,
  .pp-home-sustainability-clean *::before,
  .pp-home-sustainability-clean *::after {
scroll-behavior:auto;
    transition-duration:.01ms;
    animation-duration:.01ms;
    animation-iteration-count:1;
  }
}

/* ========================================================= PP PARTNERS MARQUEE — HOME / LARGE BLACK PARTNERS STRIP ========================================================= */

body.pp-home-page .pp-partners-marquee {
position: relative;
  width: 100%;
  min-height: clamp(390px, 40vw, 590px);
  overflow: hidden;
  isolation: isolate;
  background: #000;
  padding: clamp(88px, 8vw, 140px) 0 clamp(88px, 8vw, 140px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

body.pp-home-page .pp-partners-marquee__fade {
position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 50% 18%, rgba(255,255,255,.045), transparent 32%),
    linear-gradient(180deg, #000 0%, #000 100%);
  opacity: 1;
}

body.pp-home-page .pp-partners-marquee::before,
body.pp-home-page .pp-partners-marquee::after {
content: "";
  position: absolute;
  top: 0;
  width: clamp(90px, 14vw, 260px);
  height: 100%;
  z-index: 6;
  pointer-events: none;
}

body.pp-home-page .pp-partners-marquee::before {
left: 0;
  background: linear-gradient(90deg, #000 0%, rgba(0,0,0,.84) 28%, rgba(0,0,0,0) 100%);
}

body.pp-home-page .pp-partners-marquee::after {
right: 0;
  background: linear-gradient(270deg, #000 0%, rgba(0,0,0,.84) 28%, rgba(0,0,0,0) 100%);
}

body.pp-home-page .pp-partners-marquee__head {
position: relative;
  z-index: 3;
  width: min(100% - 40px, 1326px);
  margin: 0 auto clamp(58px, 5.4vw, 90px);
  text-align: center;
}

body.pp-home-page .pp-partners-marquee__head h2 {
margin: 0 auto;
  color: #fff;

  font-family: var(--pp-font-body, "URWGeometricMedium", "URWGeometricSemiBold", "Figtree", Arial, sans-serif) !important;
  font-size: clamp(15px, 1.25vw, 22px) !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  letter-spacing: -0.015em !important;
  text-transform: uppercase;
  text-align: center;
}

body.pp-home-page .pp-partners-marquee__track {
position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  width: max-content;
  will-change: transform;
  animation: ppPartnersMarquee 50s linear infinite !important;
  animation-play-state: running !important;
}

body.pp-home-page .pp-partners-marquee:hover .pp-partners-marquee__track,
body.pp-home-page .pp-partners-marquee__track:hover,
body.pp-home-page .pp-partners-marquee__group:hover,
body.pp-home-page .pp-partners-marquee__group a:hover {
animation-play-state: running !important;
}

body.pp-home-page .pp-partners-marquee__group {
display: flex;
  align-items: center;
  gap: clamp(74px, 8vw, 150px);
  padding-right: clamp(74px, 8vw, 150px);
  flex-shrink: 0;
}

body.pp-home-page .pp-partners-marquee__group a {
position: relative;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: clamp(200px, 15vw, 320px);
  height: clamp(120px, 10vw, 180px);

  opacity: .88;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  transition: opacity .25s ease;
}

body.pp-home-page .pp-partners-marquee__group a:hover {
opacity: 1;
}

body.pp-home-page .pp-partners-marquee__group img {
display: block !important;
  width: auto !important;
  height: auto !important;

  max-width: clamp(215px, 17vw, 350px) !important;
  max-height: clamp(100px, 8.5vw, 160px) !important;

  object-fit: contain !important;
  filter: grayscale(1) brightness(1.4) contrast(1.08) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;

  transform: none !important;
  transform-origin: center center !important;
}

body.pp-home-page .pp-partners-marquee__group a:has(img[src*="scp"]) img,
body.pp-home-page .pp-partners-marquee__group a:has(img[src*="gvfc"]) img,
body.pp-home-page .pp-partners-marquee__group a:has(img[src*="csm"]) img,
body.pp-home-page .pp-partners-marquee__group a:has(img[src*="vsc"]) img,
body.pp-home-page .pp-partners-marquee__group a:has(img[src*="scb"]) img,
body.pp-home-page .pp-partners-marquee__group a:has(img[src*="ado"]) img,
body.pp-home-page .pp-partners-marquee__group a:has(img[src*="gdc"]) img {
max-height: clamp(120px, 10vw, 190px) !important;
  max-width: clamp(140px, 11vw, 220px) !important;
}

@keyframes ppPartnersMarquee {
from{
    transform: translate3d(0, 0, 0);
  }

  to{
    transform: translate3d(-50%, 0, 0);
  }
}

@media (max-width: 1199px) {
  body.pp-home-page .pp-partners-marquee {
min-height: 440px;
    padding: 96px 0 96px;
  }

  body.pp-home-page .pp-partners-marquee__head {
margin-bottom: 66px;
  }

  body.pp-home-page .pp-partners-marquee__head h2 {
font-size: clamp(15px, 1.7vw, 20px) !important;
  }

  body.pp-home-page .pp-partners-marquee__group {
gap: 86px;
    padding-right: 86px;
  }

  body.pp-home-page .pp-partners-marquee__group a {
min-width: 240px;
    height: 138px;
  }

  body.pp-home-page .pp-partners-marquee__group img {
max-width: 260px !important;
    max-height: 124px !important;
  }
}

@media (max-width: 991px) {
  body.pp-home-page .pp-partners-marquee {
min-height: 380px;
    padding: 78px 0 78px;
  }

  body.pp-home-page .pp-partners-marquee::before,
  body.pp-home-page .pp-partners-marquee::after {
width: 90px;
  }

  body.pp-home-page .pp-partners-marquee__head {
width: calc(100% - 36px);
    margin-bottom: 56px;
  }

  body.pp-home-page .pp-partners-marquee__head h2 {
font-size: clamp(14px, 2.4vw, 18px) !important;
    letter-spacing: -0.02em !important;
  }

  body.pp-home-page .pp-partners-marquee__track {
animation-duration: 42s !important;
  }

  body.pp-home-page .pp-partners-marquee__group {
gap: 68px;
    padding-right: 68px;
  }

  body.pp-home-page .pp-partners-marquee__group a {
min-width: 200px;
    height: 118px;
  }

  body.pp-home-page .pp-partners-marquee__group img {
max-width: 210px !important;
    max-height: 100px !important;
  }
}

/* MOBILE */

@media (max-width: 767px) {
  body.pp-home-page .pp-partners-marquee {
min-height: 320px;
    padding: 64px 0 64px;
  }

  body.pp-home-page .pp-partners-marquee::before,
  body.pp-home-page .pp-partners-marquee::after {
width: 58px;
  }

  body.pp-home-page .pp-partners-marquee__head {
width: calc(100% - 28px);
    margin-bottom: 42px;
  }

  body.pp-home-page .pp-partners-marquee__head h2 {
font-size: clamp(13px, 4vw, 17px) !important;
    line-height: 1.05 !important;
    letter-spacing: -0.015em !important;
  }

  body.pp-home-page .pp-partners-marquee__track {
animation-duration: 34s !important;
  }

  body.pp-home-page .pp-partners-marquee__group {
gap: 50px;
    padding-right: 50px;
  }

  body.pp-home-page .pp-partners-marquee__group a {
min-width: 158px;
    height: 96px;
  }

  body.pp-home-page .pp-partners-marquee__group img {
max-width: 168px !important;
    max-height: 82px !important;
  }
}

/* MOBILE PEQUENO */

@media (max-width: 420px) {
  body.pp-home-page .pp-partners-marquee {
min-height: 280px;
    padding: 54px 0 54px;
  }

  body.pp-home-page .pp-partners-marquee__head {
width: calc(100% - 22px);
    margin-bottom: 36px;
  }

  body.pp-home-page .pp-partners-marquee__head h2 {
font-size: 13px !important;
  }

  body.pp-home-page .pp-partners-marquee::before,
  body.pp-home-page .pp-partners-marquee::after {
width: 36px;
  }

  body.pp-home-page .pp-partners-marquee__group {
gap: 38px;
    padding-right: 38px;
  }

  body.pp-home-page .pp-partners-marquee__group a {
min-width: 132px;
    height: 84px;
  }

  body.pp-home-page .pp-partners-marquee__group img {
max-width: 140px !important;
    max-height: 68px !important;
  }
}

/* ================================================================================================================== ABOUT ================================================================================================================== */

/* ========================================================= ABOUT — WHO WE ARE / IGUAL À SUSTENTABILIDADE Sem divisor vertical + texto mais controlado ========================================================= */

body.bu-page .pp-about-who {
position: relative;
  width: 100%;
  background: #ffffff !important;
  color: #050505 !important;
  padding: clamp(82px, 7vw, 132px) 0 clamp(82px, 7vw, 128px);
}

body.bu-page .pp-about-who__shell {
width: min(100% - 72px, 1326px);
  margin: 0 auto;

  display: grid;
  grid-template-columns: minmax(220px, .34fr) minmax(0, 1fr);
  column-gap: clamp(58px, 8vw, 132px);
  align-items: start;

  position: relative;
}

body.bu-page .pp-about-who__statement {
display: contents;
}

body.bu-page .pp-about-who,
body.bu-page .pp-about-who * {
opacity: 1 !important;
  visibility: visible !important;
}

body.bu-page .pp-about-who__shell::before {
display: none !important;
  content: none !important;
}

body.bu-page .pp-about-who__eyebrow {
grid-column: 1 / 2;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(24px, 2.5vw, 34px);

  margin: clamp(6px, .8vw, 12px) 0 0;

  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif) !important;
  font-size: clamp(25px, 2.25vw, 34px);
  line-height: 1.04;
  font-weight: 500;
  letter-spacing: -0.055em;
  text-transform: uppercase;

  color: #050505 !important;
}

body.bu-page .pp-about-who__eyebrow::before {
content: "";
  display: block;
  width: clamp(52px, 4vw, 66px);
  height: 2px;
  background: #A58667;
}

body.bu-page .pp-about-who__statement h2 {
grid-column: 2 / 3;

  max-width: 760px;
  margin: 0;

  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "URWGeometricMedium", "Figtree", Arial, sans-serif) !important;
  font-size: clamp(36px, 4.05vw, 64px);
  line-height: 1.02;
  font-weight: 500;
  letter-spacing: -0.068em;
  text-transform: uppercase;

  color: #050505 !important;
}

body.bu-page .pp-about-who__statement::before,
body.bu-page .pp-about-who__statement::after {
display: none !important;
  content: none !important;
}

@media (max-width: 1199px) {
  body.bu-page .pp-about-who {
padding: 78px 0 92px;
  }

  body.bu-page .pp-about-who__shell {
width: calc(100% - 56px);
    grid-template-columns: minmax(190px, .32fr) minmax(0, 1fr);
    column-gap: 54px;
  }

  body.bu-page .pp-about-who__eyebrow {
font-size: clamp(24px, 2.8vw, 32px);
  }

  body.bu-page .pp-about-who__statement h2 {
max-width: 720px;
    font-size: clamp(34px, 4.9vw, 58px);
    line-height: 1.03;
  }
}

@media (max-width: 991px) {
  body.bu-page .pp-about-who {
padding: 72px 0 82px;
  }

  body.bu-page .pp-about-who__shell {
width: calc(100% - 44px);
    grid-template-columns: 1fr;
    row-gap: 34px;
  }

  body.bu-page .pp-about-who__eyebrow,
  body.bu-page .pp-about-who__statement h2 {
grid-column: 1 / -1;
  }

  body.bu-page .pp-about-who__eyebrow {
max-width: 320px;
    margin: 0;
    gap: 22px;
    font-size: clamp(26px, 5vw, 38px);
  }

  body.bu-page .pp-about-who__statement h2 {
max-width: 780px;
    font-size: clamp(36px, 7vw, 60px);
    line-height: 1.03;
    letter-spacing: -0.065em;
  }
}

@media (max-width: 767px) {
  body.bu-page .pp-about-who {
padding: 60px 0 68px;
  }

  body.bu-page .pp-about-who__shell {
width: calc(100% - 32px);
    row-gap: 30px;
  }

  body.bu-page .pp-about-who__eyebrow {
gap: 20px;
    font-size: clamp(24px, 7vw, 32px);
    line-height: 1.04;
    letter-spacing: -0.052em;
  }

  body.bu-page .pp-about-who__eyebrow::before {
width: 54px;
    height: 2px;
  }

  body.bu-page .pp-about-who__statement h2 {
font-size: clamp(30px, 8.8vw, 46px);
    line-height: 1.04;
    letter-spacing: -0.058em;
  }
}

@media (max-width: 420px) {
  body.bu-page .pp-about-who {
padding: 56px 0 62px;
  }

  body.bu-page .pp-about-who__shell {
width: calc(100% - 24px);
  }

  body.bu-page .pp-about-who__eyebrow {
font-size: clamp(23px, 7.8vw, 30px);
  }

  body.bu-page .pp-about-who__statement h2 {
font-size: clamp(28px, 9.2vw, 40px);
  }
}

/* ========================================================= ABOUT — CLEAR COUNT MOTION / PP STYLE No overlap / no button / responsive ========================================================= */

body.bu-page .pp-about-clear-motion {
--pp-about-left-w: 48vw;
  --pp-about-right-w: 52vw;
  --pp-about-card-h: clamp(205px, 17vw, 255px);
  --pp-about-panel-x: clamp(34px, 4.8vw, 76px);
  --pp-about-panel-top: clamp(56px, 6.2vw, 86px);
  --pp-about-panel-bottom: clamp(56px, 6vw, 92px);
  --pp-about-gap: clamp(54px, 6vw, 96px);

  position: relative;
  width: 100%;
  min-height: 100svh;
  background: #ffffff;
  color: #050505;
  overflow: visible;
  font-family: var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
}

body.bu-page .pp-about-clear-motion,
body.bu-page .pp-about-clear-motion * {
box-sizing: border-box;
}

body.bu-page .pp-about-clear-motion__pin {
position: relative;
  width: 100%;
  height: 100svh;
  min-height: 680px;
  overflow: hidden;
  background: #ffffff;
}

body.bu-page .pp-about-clear-motion__media {
position: absolute;
  inset: 0 auto auto 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #050505;
}

body.bu-page .pp-about-clear-motion__media img {
width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  filter: saturate(.86) contrast(1.08) brightness(.82);
}

body.bu-page .pp-about-clear-motion__panel {
position: absolute;
  right: 0;
  bottom: 0;
  z-index: 3;

  width: var(--pp-about-right-w);
  min-width: 560px;
  height: var(--pp-about-card-h);

  background: #ffffff;
  color: #050505;

  padding:
    clamp(24px, 2.6vw, 34px)
    var(--pp-about-panel-x)
    clamp(34px, 3.7vw, 48px);

  display: flex;
  flex-direction: column;
  align-items: flex-start;

  overflow: hidden;
}

body.bu-page .pp-about-clear-motion__panel-head {
position: relative;
  z-index: 4;
  flex: 0 0 auto;
  width: 100%;
  background: #ffffff;
}

body.bu-page .pp-about-clear-motion__panel-head span {
display: inline-flex;
  align-items: center;
  gap: 18px;
  width: max-content;
  margin-bottom: clamp(14px, 1.4vw, 22px);

  color: #A58667;
  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: clamp(11px, .9vw, 13px);
  line-height: 1;
  letter-spacing: .28em;
  text-transform: uppercase;
}

body.bu-page .pp-about-clear-motion__panel-head span::before {
content: "";
  width: 38px;
  height: 1px;
  background: #A58667;
}

body.bu-page .pp-about-clear-motion__panel-head h1 {
margin: 0;

  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: clamp(54px, 6.2vw, 92px);
  line-height: .84;
  font-weight: 500;
  letter-spacing: -0.085em;
  text-transform: uppercase;
  color: #050505;
}

body.bu-page .pp-about-clear-motion__panel-head h1::after {
content: ".";
  color: #A58667;
}

body.bu-page .pp-about-clear-motion__body {
position: relative;
  z-index: 2;
  width: 100%;
  flex: 1 1 auto;
  min-height: 0;
  margin-top: var(--pp-about-gap);
  overflow: hidden;

  opacity: 0;
  transform: translateY(34px);
  will-change: opacity, transform;
}

body.bu-page .pp-about-clear-motion__text {
width: min(100%, 760px);
  will-change: transform;
}

body.bu-page .pp-about-clear-motion__text p {
margin: 0 0 clamp(24px, 2.2vw, 34px);

  font-family: var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size: clamp(20px, 1.65vw, 29px);
  line-height: 1.42;
  font-weight: 500;
  letter-spacing: -0.035em;
  color: rgba(5, 5, 5, .78);
}

body.bu-page .pp-about-clear-motion__text p:first-child {
color: #050505;
}

body.bu-page .pp-about-clear-motion__text p:last-child {
margin-bottom: 0;
}

@media (min-width: 1600px) {
  body.bu-page .pp-about-clear-motion {
--pp-about-left-w: 48vw;
    --pp-about-right-w: 52vw;
    --pp-about-gap: clamp(64px, 5.8vw, 108px);
  }

  body.bu-page .pp-about-clear-motion__pin {
min-height: 760px;
  }

  body.bu-page .pp-about-clear-motion__text p {
font-size: clamp(24px, 1.55vw, 32px);
  }
}

@media (max-width: 1399px) and (min-width: 992px) {
  body.bu-page .pp-about-clear-motion {
--pp-about-card-h: clamp(190px, 18vw, 230px);
    --pp-about-panel-x: clamp(34px, 4.2vw, 58px);
    --pp-about-gap: clamp(46px, 5.6vw, 78px);
  }

  body.bu-page .pp-about-clear-motion__pin {
min-height: 640px;
  }

  body.bu-page .pp-about-clear-motion__panel {
min-width: 500px;
  }

  body.bu-page .pp-about-clear-motion__panel-head h1 {
font-size: clamp(50px, 5.8vw, 78px);
  }

  body.bu-page .pp-about-clear-motion__text p {
font-size: clamp(20px, 1.8vw, 27px);
    line-height: 1.42;
  }
}

@media (max-width: 1180px) and (min-width: 992px) {
  body.bu-page .pp-about-clear-motion {
--pp-about-left-w: 46vw;
    --pp-about-right-w: 54vw;
    --pp-about-card-h: 205px;
    --pp-about-panel-x: 40px;
    --pp-about-gap: 48px;
  }

  body.bu-page .pp-about-clear-motion__panel {
min-width: 0;
  }

  body.bu-page .pp-about-clear-motion__panel-head h1 {
font-size: clamp(46px, 5.5vw, 66px);
  }

  body.bu-page .pp-about-clear-motion__text p {
font-size: clamp(19px, 1.9vw, 24px);
    line-height: 1.42;
  }
}

@media (min-width: 992px) and (max-height: 760px) {
  body.bu-page .pp-about-clear-motion {
--pp-about-panel-top: 46px;
    --pp-about-panel-bottom: 46px;
    --pp-about-gap: 38px;
  }

  body.bu-page .pp-about-clear-motion__pin {
min-height: 600px;
  }

  body.bu-page .pp-about-clear-motion__panel-head h1 {
font-size: clamp(44px, 5.4vw, 70px);
  }

  body.bu-page .pp-about-clear-motion__text p {
font-size: clamp(18px, 1.5vw, 23px);
    line-height: 1.36;
    margin-bottom: 22px;
  }
}

/* ========================================================= TABLET + MOBILE — sem pin para não partir ========================================================= */

@media (max-width: 991px) {
  body.bu-page .pp-about-clear-motion {
min-height: auto;
    background: #ffffff;
  }

  body.bu-page .pp-about-clear-motion__pin {
height: auto;
    min-height: 0;
    overflow: visible;
    background: #ffffff;
  }

  body.bu-page .pp-about-clear-motion__media {
position: relative;
    inset: auto;
    width: 100%;
    height: 62svh;
    min-height: 430px;
  }

  body.bu-page .pp-about-clear-motion__media img {
object-position: center center;
    filter: saturate(.9) contrast(1.06) brightness(.8);
  }

  body.bu-page .pp-about-clear-motion__panel {
position: relative;
    right: auto;
    bottom: auto;

    width: 100%;
    min-width: 0;
    height: auto;

    padding: clamp(52px, 7vw, 78px) clamp(24px, 6vw, 58px) clamp(72px, 9vw, 104px);
    overflow: visible;
  }

  body.bu-page .pp-about-clear-motion__panel-head span {
font-size: 12px;
    letter-spacing: .22em;
    margin-bottom: 18px;
  }

  body.bu-page .pp-about-clear-motion__panel-head span::before {
width: 34px;
  }

  body.bu-page .pp-about-clear-motion__panel-head h1 {
font-size: clamp(52px, 12vw, 96px);
    line-height: .88;
    letter-spacing: -0.078em;
  }

  body.bu-page .pp-about-clear-motion__body {
opacity: 1;
    transform: none;
    overflow: visible;
    margin-top: clamp(48px, 8vw, 78px);
  }

  body.bu-page .pp-about-clear-motion__text {
width: min(100%, 760px);
  }

  body.bu-page .pp-about-clear-motion__text p {
font-size: clamp(20px, 3.2vw, 28px);
    line-height: 1.5;
    letter-spacing: -0.03em;
    margin-bottom: 28px;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width: 767px) {
  body.bu-page .pp-about-clear-motion__media {
height: 58svh;
    min-height: 390px;
  }

  body.bu-page .pp-about-clear-motion__panel {
padding: 46px 22px 72px;
  }

  body.bu-page .pp-about-clear-motion__panel-head span {
font-size: 11px;
    letter-spacing: .18em;
    margin-bottom: 16px;
  }

  body.bu-page .pp-about-clear-motion__panel-head span::before {
width: 30px;
  }

  body.bu-page .pp-about-clear-motion__panel-head h1 {
font-size: clamp(48px, 14vw, 74px);
    line-height: .9;
    letter-spacing: -0.07em;
  }

  body.bu-page .pp-about-clear-motion__body {
margin-top: 46px;
  }

  body.bu-page .pp-about-clear-motion__text p {
font-size: clamp(18px, 5.2vw, 24px);
    line-height: 1.52;
    letter-spacing: -0.025em;
    margin-bottom: 26px;
  }
}

/* ========================================================= SMALL MOBILE ========================================================= */

@media (max-width: 420px) {
  body.bu-page .pp-about-clear-motion__media {
height: 54svh;
    min-height: 350px;
  }

  body.bu-page .pp-about-clear-motion__panel {
padding-left: 18px;
    padding-right: 18px;
  }

  body.bu-page .pp-about-clear-motion__panel-head h1 {
font-size: clamp(44px, 15vw, 62px);
  }

  body.bu-page .pp-about-clear-motion__text p {
font-size: 18px;
  }
}

/* ========================================================= ABOUT — WHITE BREATH BEFORE METRICS ========================================================= */

body.bu-page .pp-about-white-flow {
background: #ffffff !important;
}

body.bu-page .pp-about-clear-motion {
margin-bottom: 0 !important;
}

/* ========================================================= ABOUT — IMPACTO / METRICS CLEAN ========================================================= */

body.bu-page .pp-about-impact-sport {
position: relative;
  width: 100%;
  background: #050505;
  color: #ffffff;
  overflow: hidden;
  isolation: isolate;
  padding: clamp(80px, 7vw, 120px) 0;
}

body.bu-page .pp-about-impact-sport,
body.bu-page .pp-about-impact-sport * {
box-sizing: border-box;
  opacity: 1 !important;
  visibility: visible !important;
}

body.bu-page .pp-about-impact-sport__bg {
position: absolute;
  inset: 0;
  z-index: -3;
}

body.bu-page .pp-about-impact-sport__bg img {
width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  filter: brightness(.34) contrast(1.05) saturate(.82);
}

body.bu-page .pp-about-impact-sport__overlay {
position: absolute;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(
      90deg,
      rgba(5,5,5,.92) 0%,
      rgba(5,5,5,.78) 38%,
      rgba(5,5,5,.72) 60%,
      rgba(5,5,5,.84) 100%
    );
}

body.bu-page .pp-about-impact-sport__shell {
width: min(100% - 72px, 1326px);
  margin: 0 auto;

  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(420px, 560px);
  gap: clamp(44px, 6vw, 92px);
  align-items: center;
}

body.bu-page .pp-about-impact-sport__left {
max-width: 760px;
}

body.bu-page .pp-about-impact-sport__eyebrow {
display: inline-flex;
  align-items: center;
  gap: 16px;
  margin-bottom: clamp(24px, 2.4vw, 38px);

  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: 12px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: #A58667;
}

body.bu-page .pp-about-impact-sport__eyebrow::after {
content: "";
  width: 62px;
  height: 1px;
  background: #A58667;
}

body.bu-page .pp-about-impact-sport__left h2 {
margin: 0;

  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: clamp(58px, 6vw, 102px);
  line-height: .92;
  font-weight: 500;
  letter-spacing: -0.07em;
  text-transform: uppercase;
  color: #ffffff;

  max-width: 760px;
}

body.bu-page .pp-about-impact-sport__left p {
max-width: 620px;
  margin: clamp(26px, 2.6vw, 38px) 0 0;

  font-family: var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size: clamp(18px, 1.12vw, 22px);
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: -0.03em;
  color: rgba(255,255,255,.82);
}

body.bu-page .pp-about-impact-sport__right {
display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

body.bu-page .pp-about-impact-sport__card {
aspect-ratio: 1 / 1;
  min-height: 230px;
  padding: clamp(26px, 2.2vw, 34px);

  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;

  background: rgba(0,0,0,.16);
  border: 1px solid rgba(255,255,255,.16);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);

  transition: border-color .25s ease, transform .25s ease, background .25s ease;
}

body.bu-page .pp-about-impact-sport__card:hover {
transform: translateY(-2px);
  border-color: rgba(165,134,103,.6);
  background: rgba(255,255,255,.03);
}

body.bu-page .pp-about-impact-sport__card strong {
display: inline-flex;
  align-items: baseline;
  flex-wrap: nowrap;
  white-space: nowrap;
  width: max-content;
  margin: 0;

  font-family: var(
    --pp-font-heading,
    "URWGeometricSemiBold",
    "Figtree",
    Arial,
    sans-serif
  );
  font-size: clamp(52px, 4.4vw, 84px);
  line-height: .9;
  font-weight: 500;
  letter-spacing: -0.07em;
  color: #ffffff;
}

body.bu-page .pp-about-impact-sport__card p {
margin: 0;
  max-width: 220px;

  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: clamp(15px, .95vw, 18px);
  line-height: 1.35;
  font-weight: 500;
  letter-spacing: .10em;
  text-transform: uppercase;
  color: rgba(255,255,255,.88);
}

@media (max-width: 1280px) {
  body.bu-page .pp-about-impact-sport__shell {
grid-template-columns: minmax(0, 1fr) minmax(380px, 500px);
    gap: 48px;
  }

  body.bu-page .pp-about-impact-sport__left h2 {
font-size: clamp(54px, 6.4vw, 86px);
  }
}

@media (max-width: 991px) {
  body.bu-page .pp-about-impact-sport {
padding: 74px 0 84px;
  }

  body.bu-page .pp-about-impact-sport__shell {
width: calc(100% - 40px);
    grid-template-columns: 1fr;
    gap: 42px;
  }

  body.bu-page .pp-about-impact-sport__left {
max-width: 100%;
  }

  body.bu-page .pp-about-impact-sport__left h2 {
max-width: 740px;
    font-size: clamp(50px, 8.2vw, 78px);
    line-height: .94;
  }

  body.bu-page .pp-about-impact-sport__left p {
max-width: 680px;
  }

  body.bu-page .pp-about-impact-sport__right {
max-width: 720px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.bu-page .pp-about-impact-sport__card {
min-height: 220px;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width: 767px) {
  body.bu-page .pp-about-impact-sport {
padding: 62px 0 68px;
  }

  body.bu-page .pp-about-impact-sport__shell {
width: calc(100% - 28px);
    gap: 34px;
  }

  body.bu-page .pp-about-impact-sport__eyebrow {
gap: 12px;
    margin-bottom: 22px;
    font-size: 11px;
    letter-spacing: .18em;
  }

  body.bu-page .pp-about-impact-sport__eyebrow::after {
width: 42px;
  }

  body.bu-page .pp-about-impact-sport__left h2 {
font-size: clamp(40px, 12vw, 62px);
    line-height: .96;
    letter-spacing: -0.06em;
  }

  body.bu-page .pp-about-impact-sport__left p {
font-size: 17px;
    line-height: 1.48;
    margin-top: 22px;
  }

  body.bu-page .pp-about-impact-sport__right {
grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  body.bu-page .pp-about-impact-sport__card {
aspect-ratio: 1 / 1;
    min-height: 170px;
    padding: 18px;
  }

  body.bu-page .pp-about-impact-sport__card strong {
font-size: clamp(38px, 11vw, 58px);
    line-height: .92;
  }

  body.bu-page .pp-about-impact-sport__card p {
font-size: 11px;
    line-height: 1.32;
    letter-spacing: .08em;
    max-width: 100%;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width: 480px) {
  body.bu-page .pp-about-impact-sport__shell {
width: calc(100% - 22px);
  }

  body.bu-page .pp-about-impact-sport__left h2 {
font-size: clamp(34px, 11.4vw, 48px);
  }

  body.bu-page .pp-about-impact-sport__right {
grid-template-columns: 1fr;
  }

  body.bu-page .pp-about-impact-sport__card {
aspect-ratio: auto;
    min-height: 160px;
    padding: 18px 16px;
  }

  body.bu-page .pp-about-impact-sport__card strong {
font-size: clamp(40px, 14vw, 56px);
  }

  body.bu-page .pp-about-impact-sport__card p {
font-size: 12px;
  }
}

/* ========================================================= ABOUT — INSTITUTIONAL VIDEO RETANGULAR / SEM CURVAS RESPONSIVE DESKTOP / TABLET / MOBILE ========================================================= */

body.bu-page .pp-about-film {
--pp-film-white:#ffffff;
  --pp-film-black:#050505;
  --pp-film-accent:#A58667;

  position:relative;
  isolation:isolate;

  display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0;

  padding:
    clamp(56px, 6vw, 108px)
    0
    clamp(64px, 7vw, 122px);

  overflow:hidden;

  background:var(--pp-film-white);
  color:var(--pp-film-white);
}

body.bu-page .pp-about-film *,
body.bu-page .pp-about-film *::before,
body.bu-page .pp-about-film *::after {
box-sizing:border-box;
}

body.bu-page .pp-about-film__frame {
position:relative;
  isolation:isolate;

  display:flex;
  align-items:center;
  justify-content:center;

  width:100%;
  max-width:100%;
  min-width:0;

  height:clamp(520px, 48vw, 880px);

  margin:0;
  padding:0;

  overflow:hidden;

  border:0;
  border-radius:0 !important;

  background:
    radial-gradient(
      circle at 50% 48%,
      rgba(165,134,103,.12),
      transparent 42%
    ),
    var(--pp-film-black);

  contain:layout paint;
}

body.bu-page .pp-about-film__frame::before,
body.bu-page .pp-about-film__frame::after {
content:none !important;
  display:none !important;

  position:static !important;

  width:0 !important;
  height:0 !important;

  background:none !important;
  border:0 !important;
  border-radius:0 !important;

  transform:none !important;
}

body.bu-page .pp-about-film__video {
position:absolute;
  inset:0;
  z-index:1;

  display:block;

  width:100%;
  height:100%;
  max-width:none;
  min-width:100%;
  min-height:100%;

  margin:0;
  padding:0;

  object-fit:cover;
  object-position:center;

  border:0;
  border-radius:0 !important;

  background:var(--pp-film-black);

  filter:
    saturate(.94)
    contrast(1.04)
    brightness(.92);

  transform:scale(1.01);
  transform-origin:center;

  cursor:pointer;

  transition:
    transform 1.1s cubic-bezier(.22,1,.36,1),
    filter .6s cubic-bezier(.22,1,.36,1);
}

body.bu-page .pp-about-film__play {
position:absolute;
  top:50%;
  left:50%;
  z-index:6;

  display:flex;
  align-items:center;
  justify-content:center;

  width:clamp(166px, 14vw, 230px);
  height:clamp(166px, 14vw, 230px);

  max-width:42vw;
  max-height:42vw;

  margin:0;
  padding:0;

  overflow:visible;

  border:0;
  border-radius:50%;

  background:transparent;
  color:var(--pp-film-white);

  cursor:pointer;

  opacity:1;
  visibility:visible;

  transform:
    translate(-50%, -50%)
    scale(1);

  transform-origin:center;

  appearance:none;
  -webkit-appearance:none;

  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;

  transition:
    transform .45s cubic-bezier(.22,1,.36,1),
    opacity .4s ease,
    visibility .4s ease;
}

body.bu-page
.pp-about-film__frame.is-playing
.pp-about-film__play {
opacity:0;

  /* IMPORTANTE:
     continua presente para receber o clique */
  visibility:visible;

  transform:
    translate(-50%, -50%)
    scale(1);

  /* permite clicar no centro para pausar */
  pointer-events:auto;

  cursor:pointer;
}

body.bu-page
.pp-about-film__frame.is-playing
.pp-about-film__play {
width:clamp(180px, 22vw, 320px);
  height:clamp(180px, 22vw, 320px);
}

@media (max-width:767px) {
  body.bu-page
  .pp-about-film__frame.is-playing
  .pp-about-film__play {
width:190px;
    height:190px;
  }
}

body.bu-page
.pp-about-film__frame.is-playing
.pp-about-film__video {
filter:
    saturate(1)
    contrast(1.01)
    brightness(1);

  transform:scale(1);
}

body.bu-page
.pp-about-film__frame.is-playing
.pp-about-film__play {
opacity:0;
  visibility:hidden;

  transform:
    translate(-50%, -50%)
    scale(.9);

  pointer-events:none;
}

body.bu-page
.pp-about-film__frame.is-playing {
cursor:pointer;
}

body.bu-page
.pp-about-film__frame.is-playing
.pp-about-film__video {
cursor:pointer;
}

@media (hover:hover) and (pointer:fine) {
  body.bu-page
  .pp-about-film__frame:not(.is-playing):hover
  .pp-about-film__video {
transform:scale(1.035);

    filter:
      saturate(.98)
      contrast(1.03)
      brightness(.96);
  }

  body.bu-page .pp-about-film__play:hover {
transform:
      translate(-50%, -50%)
      scale(1.045);
  }
}

body.bu-page .pp-about-film__play:focus {
outline:0;
}

body.bu-page .pp-about-film__play:focus-visible {
outline:2px solid var(--pp-film-white);
  outline-offset:8px;
}

body.bu-page .pp-about-film__play:active {
transform:
    translate(-50%, -50%)
    scale(.96);
}

@media (min-width:1800px) {
  body.bu-page .pp-about-film {
padding:
      110px
      0
      126px;
  }

  body.bu-page .pp-about-film__frame {
height:min(900px, 50vw);
  }

  body.bu-page .pp-about-film__play {
width:230px;
    height:230px;
  }
}

@media (min-width:1400px) and (max-width:1799px) {
  body.bu-page .pp-about-film__frame {
height:clamp(620px, 48vw, 840px);
  }
}

@media (min-width:992px) and (max-width:1399px) {
  body.bu-page .pp-about-film {
padding:
      76px
      0
      94px;
  }

  body.bu-page .pp-about-film__frame {
height:clamp(500px, 52vw, 720px);
  }

  body.bu-page .pp-about-film__play {
width:clamp(160px, 15vw, 200px);
    height:clamp(160px, 15vw, 200px);
  }
}

@media (min-width:768px) and (max-width:991px) {
  body.bu-page .pp-about-film {
padding:
      64px
      0
      82px;
  }

  body.bu-page .pp-about-film__frame {
height:auto;
    min-height:500px;

    aspect-ratio:16 / 10;
  }

  body.bu-page .pp-about-film__video {
object-position:center center;
  }

  body.bu-page .pp-about-film__play {
width:164px;
    height:164px;

    max-width:none;
    max-height:none;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  body.bu-page .pp-about-film {
padding:
      52px
      0
      68px;
  }

  body.bu-page .pp-about-film__frame {
height:auto;
    min-height:430px;

    aspect-ratio:4 / 5;
  }

  body.bu-page .pp-about-film__video {
object-position:center center;

    filter:
      saturate(.93)
      contrast(1.04)
      brightness(.87);

    transform:scale(1.01);
  }

  body.bu-page .pp-about-film__play {
width:142px;
    height:142px;

    max-width:none;
    max-height:none;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:480px) {
  body.bu-page .pp-about-film {
padding:
      44px
      0
      60px;
  }

  body.bu-page .pp-about-film__frame {
min-height:420px;

    aspect-ratio:4 / 5;
  }

  body.bu-page .pp-about-film__play {
width:128px;
    height:128px;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

@media (max-width:360px) {
  body.bu-page .pp-about-film {
padding:
      40px
      0
      54px;
  }

  body.bu-page .pp-about-film__frame {
min-height:410px;
  }

  body.bu-page .pp-about-film__play {
width:118px;
    height:118px;
  }
}

/* ========================================================= MOBILE E TABLET HORIZONTAL ========================================================= */

@media (max-width:900px) and (orientation:landscape) {
  body.bu-page .pp-about-film {
padding:
      46px
      0
      62px;
  }

  body.bu-page .pp-about-film__frame {
height:auto;
    min-height:390px;

    aspect-ratio:16 / 9;
  }

  body.bu-page .pp-about-film__video {
object-position:center center;
  }

  body.bu-page .pp-about-film__play {
width:128px;
    height:128px;
  }
}

@media (max-height:600px) and (orientation:landscape) {
  body.bu-page .pp-about-film {
padding:
      32px
      0
      42px;
  }

  body.bu-page .pp-about-film__frame {
min-height:340px;
    max-height:calc(100svh - 40px);
  }

  body.bu-page .pp-about-film__play {
width:112px;
    height:112px;
  }
}

@media (prefers-reduced-motion:reduce) {
  body.bu-page .pp-about-film__video,
  body.bu-page .pp-about-film__play {
transition:none !important;
  }
}

/* ========================================================= ABOUT — MISSÃO VISÃO VALORES / CLEAN AVERY DESIGN ========================================================= */

body.bu-page .pp-about-mvv-clean {
position: relative;
  width: 100%;
  background: #f6f2eb;
  color: #050505;
  overflow: hidden;
  isolation: isolate;
}

body.bu-page .pp-about-mvv-clean,
body.bu-page .pp-about-mvv-clean * {
box-sizing: border-box;
  opacity: 1 !important;
  visibility: visible !important;
}

body.bu-page .pp-about-mvv-clean__shell {
width: 100%;
  min-height: 100svh;

  display: grid;
  grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr);
}

body.bu-page .pp-about-mvv-clean__left {
position: relative;
  min-height: 100svh;
  padding:
    clamp(92px, 7vw, 132px)
    clamp(34px, 5vw, 76px)
    clamp(72px, 6vw, 104px);

  display: flex;
  align-items: center;
  overflow: hidden;

  background: #f3efe7;
}

body.bu-page .pp-about-mvv-clean__media {
position: absolute;
  inset: 0;
  z-index: 1;
}

body.bu-page .pp-about-mvv-clean__media img {
width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;

  filter: grayscale(100%) contrast(1.04) brightness(1.42);
  opacity: .34;
  transform: scale(1.04);
}

body.bu-page .pp-about-mvv-clean__left::after {
content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;

  background:
    linear-gradient(90deg, rgba(246,242,235,.96) 0%, rgba(246,242,235,.82) 52%, rgba(246,242,235,.48) 100%),
    radial-gradient(circle at 80% 82%, rgba(165,134,103,.16), transparent 28%);
}

body.bu-page .pp-about-mvv-clean__left-content {
position: relative;
  z-index: 3;
  width: 100%;
}

body.bu-page .pp-about-mvv-clean__eyebrow {
display: inline-flex;
  align-items: center;
  gap: 16px;
  margin-bottom: clamp(34px, 3.4vw, 56px);

  color: #A58667;
  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: 12px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: .26em;
  text-transform: uppercase;
}

body.bu-page .pp-about-mvv-clean__eyebrow::before {
content: "";
  width: 46px;
  height: 1px;
  background: #A58667;
}

body.bu-page .pp-about-mvv-clean__left h2 {
max-width: 760px;
  margin: 0;

  color: #050505;
  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: clamp(76px, 8.8vw, 152px);
  line-height: .88;
  font-weight: 500;
  letter-spacing: -0.086em;
  text-transform: uppercase;
}

body.bu-page .pp-about-mvv-clean__left h2::after {
content: ".";
  color: #A58667;
}

body.bu-page .pp-about-mvv-clean__left p {
max-width: 520px;
  margin: clamp(44px, 4vw, 68px) 0 0;

  color: rgba(5,5,5,.72);
  font-family: var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size: clamp(18px, 1.2vw, 23px);
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: -0.03em;
}

body.bu-page .pp-about-mvv-clean__left-content::after {
content: "";
  position: absolute;
  right: clamp(20px, 3vw, 54px);
  bottom: clamp(-80px, -5vw, -40px);
  width: clamp(170px, 18vw, 320px);
  aspect-ratio: 1;
  border: 1px solid rgba(165,134,103,.22);
  border-radius: 50%;
  pointer-events: none;
}

body.bu-page .pp-about-mvv-clean__right {
min-height: 100svh;
  padding:
    clamp(92px, 7vw, 132px)
    clamp(34px, 5vw, 76px)
    clamp(72px, 6vw, 104px);

  display: flex;
  align-items: center;

  background: #ffffff;
}

body.bu-page .pp-about-mvv-clean__accordion {
width: min(100%, 760px);
  margin-left: auto;
  margin-right: auto;
}

body.bu-page .pp-about-mvv-clean__item {
border-top: 1px solid rgba(165,134,103,.42);
}

body.bu-page .pp-about-mvv-clean__item:last-child {
border-bottom: 1px solid rgba(165,134,103,.28);
}

body.bu-page .pp-about-mvv-clean__trigger {
width: 100%;
  min-height: clamp(76px, 6.6vw, 104px);
  padding: 0;

  display: grid;
  grid-template-columns: 58px 1fr 40px;
  align-items: center;
  gap: clamp(18px, 2.4vw, 36px);

  border: 0;
  background: transparent;
  cursor: pointer;
  text-align: left;
}

body.bu-page .pp-about-mvv-clean__number {
color: #A58667;
  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: clamp(13px, .9vw, 16px);
  line-height: 1;
  font-weight: 500;
  letter-spacing: .18em;
}

body.bu-page .pp-about-mvv-clean__label {
color: #050505;
  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: clamp(13px, 1vw, 18px);
  line-height: 1;
  font-weight: 500;
  letter-spacing: .28em;
  text-transform: uppercase;
}

body.bu-page .pp-about-mvv-clean__icon {
position: relative;
  width: 24px;
  height: 24px;
  justify-self: end;
}

body.bu-page .pp-about-mvv-clean__icon::before,
body.bu-page .pp-about-mvv-clean__icon::after {
content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 18px;
  height: 1.5px;
  background: #A58667;
  transform: translate(-50%, -50%);
  transition: transform .28s ease, opacity .28s ease;
}

body.bu-page .pp-about-mvv-clean__icon::after {
transform: translate(-50%, -50%) rotate(90deg);
}

body.bu-page .pp-about-mvv-clean__item.is-open .pp-about-mvv-clean__icon::after {
transform: translate(-50%, -50%) rotate(0deg);
  opacity: 0;
}

body.bu-page .pp-about-mvv-clean__panel {
display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows .42s cubic-bezier(.22, 1, .36, 1);
}

body.bu-page .pp-about-mvv-clean__item.is-open .pp-about-mvv-clean__panel {
grid-template-rows: 1fr;
}

body.bu-page .pp-about-mvv-clean__panel > * {
overflow: hidden;
}

body.bu-page .pp-about-mvv-clean__statement {
max-width: 640px;
  margin: 0 0 clamp(22px, 2vw, 34px) 58px;

  color: #050505;
  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: clamp(38px, 3.9vw, 66px);
  line-height: 1;
  font-weight: 500;
  letter-spacing: -0.068em;
}

@media (hover:hover) {
  body.bu-page .pp-about-mvv-clean__item:hover .pp-about-mvv-clean__label {
color: #A58667;
  }
}

@media (max-width: 1399px) {
  body.bu-page .pp-about-mvv-clean__left h2 {
font-size: clamp(68px, 8.2vw, 124px);
  }

  body.bu-page .pp-about-mvv-clean__statement {
font-size: clamp(34px, 3.8vw, 58px);
  }
}

@media (max-width: 1199px) {
  body.bu-page .pp-about-mvv-clean__shell {
grid-template-columns: .92fr 1.08fr;
  }

  body.bu-page .pp-about-mvv-clean__left,
  body.bu-page .pp-about-mvv-clean__right {
padding-left: 42px;
    padding-right: 42px;
  }

  body.bu-page .pp-about-mvv-clean__left h2 {
font-size: clamp(62px, 8vw, 104px);
  }

  body.bu-page .pp-about-mvv-clean__statement {
margin-left: 50px;
    font-size: clamp(32px, 4vw, 52px);
  }
}

@media (max-width: 991px) {
  body.bu-page .pp-about-mvv-clean__shell {
min-height: auto;
    grid-template-columns: 1fr;
  }

  body.bu-page .pp-about-mvv-clean__left,
  body.bu-page .pp-about-mvv-clean__right {
min-height: auto;
    padding: clamp(72px, 9vw, 104px) clamp(24px, 6vw, 56px);
  }

  body.bu-page .pp-about-mvv-clean__left {
min-height: 68svh;
  }

  body.bu-page .pp-about-mvv-clean__left h2 {
max-width: 760px;
    font-size: clamp(58px, 13vw, 112px);
  }

  body.bu-page .pp-about-mvv-clean__left p {
max-width: 640px;
    font-size: clamp(18px, 2.4vw, 22px);
  }

  body.bu-page .pp-about-mvv-clean__right {
background: #faf7f1;
  }

  body.bu-page .pp-about-mvv-clean__accordion {
width: 100%;
  }

  body.bu-page .pp-about-mvv-clean__statement {
max-width: 760px;
    margin-left: 58px;
    font-size: clamp(36px, 7vw, 62px);
  }
}

/* mobile */

@media (max-width: 767px) {
  body.bu-page .pp-about-mvv-clean__left,
  body.bu-page .pp-about-mvv-clean__right {
padding-left: 22px;
    padding-right: 22px;
  }

  body.bu-page .pp-about-mvv-clean__left {
min-height: 620px;
  }

  body.bu-page .pp-about-mvv-clean__eyebrow {
gap: 12px;
    margin-bottom: 34px;
    font-size: 11px;
    letter-spacing: .18em;
  }

  body.bu-page .pp-about-mvv-clean__eyebrow::before {
width: 32px;
  }

  body.bu-page .pp-about-mvv-clean__left h2 {
font-size: clamp(48px, 16vw, 78px);
    line-height: .92;
    letter-spacing: -0.072em;
  }

  body.bu-page .pp-about-mvv-clean__left p {
margin-top: 36px;
    font-size: 17px;
    line-height: 1.52;
  }

  body.bu-page .pp-about-mvv-clean__trigger {
min-height: 78px;
    grid-template-columns: 42px 1fr 30px;
    gap: 14px;
  }

  body.bu-page .pp-about-mvv-clean__label {
font-size: 12px;
    letter-spacing: .22em;
  }

  body.bu-page .pp-about-mvv-clean__number {
font-size: 12px;
  }

  body.bu-page .pp-about-mvv-clean__statement {
margin-left: 42px;
    margin-bottom: 20px;
    font-size: clamp(28px, 8.4vw, 42px);
    line-height: 1.05;
    letter-spacing: -0.058em;
  }
}

/* mobile pequeno */

@media (max-width: 420px) {
  body.bu-page .pp-about-mvv-clean__left,
  body.bu-page .pp-about-mvv-clean__right {
padding-left: 18px;
    padding-right: 18px;
  }

  body.bu-page .pp-about-mvv-clean__left {
min-height: 560px;
  }

  body.bu-page .pp-about-mvv-clean__left h2 {
font-size: clamp(42px, 15vw, 62px);
  }

  body.bu-page .pp-about-mvv-clean__statement {
margin-left: 0;
  }

  body.bu-page .pp-about-mvv-clean__trigger {
grid-template-columns: 38px 1fr 28px;
  }
}

/* ========================================================= ABOUT FILM — DESKTOP / MOBILE VIDEO SWITCH ========================================================= */

body.bu-page .pp-about-film__video--desktop {
display:block;
}

body.bu-page .pp-about-film__video--mobile {
display:none;
}

/* ========================================================= MOBILE — USA VÍDEO VERTICAL ========================================================= */

@media (max-width:767px) {
  body.bu-page .pp-about-film__video--desktop {
display:none;
  }

  body.bu-page .pp-about-film__video--mobile {
display:block;
  }

  body.bu-page .pp-about-film__frame {
width:100%;

    /*
      vertical mas sem ficar exageradamente comprido
      em telemóveis pequenos/grandes
    */
    height:min(
      calc(100svh - 100px),
      820px
    );

    min-height:560px;
    max-height:820px;
  }

  body.bu-page .pp-about-film__video--mobile {
width:100%;
    height:100%;

    min-width:100%;
    min-height:100%;

    object-fit:cover;

    /* altera caso queiras mostrar mais cima/baixo do vídeo */
    object-position:center center;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:480px) {
  body.bu-page .pp-about-film__frame {
height:min(
      calc(100svh - 90px),
      760px
    );

    min-height:540px;
  }
}

/* ========================================================= MOBILE MUITO BAIXO ex: telemóvel em landscape / browsers pequenos ========================================================= */

@media (max-width:767px) and (max-height:650px) {
  body.bu-page .pp-about-film__frame {
height:calc(100svh - 70px);
    min-height:480px;
  }
}

/* ========================================================= ABOUT — CEO QUOTE / CLEAN TESTIMONIAL ========================================================= */

body.bu-page .pp-about-ceo-quote {
position: relative;
  width: 100%;
  background: #ffffff;
  color: #050505;
  overflow: hidden;
  isolation: isolate;

  padding: clamp(82px, 8vw, 138px) 0 clamp(86px, 8vw, 148px);
}

body.bu-page .pp-about-ceo-quote,
body.bu-page .pp-about-ceo-quote * {
box-sizing: border-box;
  opacity: 1 !important;
  visibility: visible !important;
}

body.bu-page .pp-about-ceo-quote__shell {
width: min(100% - 72px, 1326px);
  margin: 0 auto;
  text-align: center;
  position: relative;
}

/* label superior igual ao estilo PP / Design */

body.bu-page .pp-about-ceo-quote__eyebrow {
display: flex;
  align-items: center;
  gap: 18px;

  margin-bottom: clamp(54px, 6vw, 92px);

  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: 12px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: #A58667;
}

body.bu-page .pp-about-ceo-quote__eyebrow span {
display: block;
  width: 58px;
  height: 1px;
  background: #A58667;
}

body.bu-page .pp-about-ceo-quote__mark {
margin: 0 auto clamp(22px, 2vw, 34px);

  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(62px, 6vw, 98px);
  line-height: .7;
  font-weight: 700;
  color: #A58667;
}

body.bu-page .pp-about-ceo-quote__text {
max-width: 1040px;
  margin: 0 auto;

  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 3.65vw, 68px);
  line-height: 1.18;
  font-weight: 400;
  letter-spacing: -0.055em;

  color: #141414;
}

body.bu-page .pp-about-ceo-quote__line {
width: clamp(54px, 5vw, 92px);
  height: 1px;
  background: #A58667;

  margin: clamp(46px, 4.8vw, 76px) auto clamp(28px, 2.8vw, 42px);
}

body.bu-page .pp-about-ceo-quote__author {
display: block;

  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: clamp(14px, 1vw, 19px);
  line-height: 1;
  font-style: normal;
  font-weight: 500;
  letter-spacing: .28em;
  text-transform: uppercase;

  color: rgba(5,5,5,.78);
}

body.bu-page .pp-about-ceo-quote::after {
content: "";
  position: absolute;
  left: 50%;
  bottom: -1px;
  width: min(100% - 72px, 1326px);
  height: 1px;
  transform: translateX(-50%);
  background: rgba(5,5,5,.08);
}

@media (max-width: 1199px) {
  body.bu-page .pp-about-ceo-quote {
padding: 76px 0 96px;
  }

  body.bu-page .pp-about-ceo-quote__shell {
width: calc(100% - 56px);
  }

  body.bu-page .pp-about-ceo-quote__text {
max-width: 940px;
    font-size: clamp(32px, 4.4vw, 56px);
    line-height: 1.2;
  }
}

@media (max-width: 767px) {
  body.bu-page .pp-about-ceo-quote {
padding: 66px 0 76px;
  }

  body.bu-page .pp-about-ceo-quote__shell {
width: calc(100% - 30px);
  }

  body.bu-page .pp-about-ceo-quote__eyebrow {
gap: 12px;
    margin-bottom: 44px;
    font-size: 11px;
    letter-spacing: .2em;
  }

  body.bu-page .pp-about-ceo-quote__eyebrow span {
width: 38px;
  }

  body.bu-page .pp-about-ceo-quote__mark {
font-size: 58px;
    margin-bottom: 20px;
  }

  body.bu-page .pp-about-ceo-quote__text {
font-size: clamp(27px, 8vw, 42px);
    line-height: 1.24;
    letter-spacing: -0.045em;
  }

  body.bu-page .pp-about-ceo-quote__line {
margin: 38px auto 26px;
  }

  body.bu-page .pp-about-ceo-quote__author {
font-size: 13px;
    letter-spacing: .22em;
  }
}

@media (max-width: 420px) {
  body.bu-page .pp-about-ceo-quote__shell {
width: calc(100% - 24px);
  }

  body.bu-page .pp-about-ceo-quote__text {
font-size: clamp(25px, 7.6vw, 34px);
    line-height: 1.26;
  }

  body.bu-page .pp-about-ceo-quote__author {
font-size: 12px;
  }
}

/* ========================================================= ABOUT — WHITE DIVIDERS / REAL SECTIONS Separadores brancos reais entre blocos escuros ========================================================= */

body.bu-page .pp-about-white-flow {
background: #ffffff;
}

body.bu-page .pp-about-white-divider {
width: 100%;
  height: clamp(72px, 8vw, 140px);
  background: #ffffff;
  display: block;
  position: relative;
  z-index: 1;
}

body.bu-page .pp-about-impact-sport,
body.bu-page .pp-about-mvv-clean {
margin-top: 0;
}

@media (max-width: 991px) {
  body.bu-page .pp-about-white-divider {
height: 72px;
  }
}

/* mobile */

@media (max-width: 767px) {
  body.bu-page .pp-about-white-divider {
height: 54px;
  }
}

/* mobile pequeno */

@media (max-width: 420px) {
  body.bu-page .pp-about-white-divider {
height: 44px;
  }
}

/* ========================================================= ABOUT — O QUE NOS DISTINGUE RESPONSIVE DESKTOP / TABLET / MOBILE ========================================================= */

body.bu-page .pp-about-partner {
--pp-partner-accent:#A58667;
  --pp-partner-black:#050505;
  --pp-partner-grey:rgba(5,5,5,.62);
  --pp-partner-line:rgba(5,5,5,.13);

  position:relative;
  isolation:isolate;

  width:100%;
  max-width:100%;
  min-width:0;

  padding:
    clamp(88px, 8vw, 148px)
    0
    clamp(92px, 8vw, 140px);

  overflow:clip;

  background:#ffffff !important;
  color:var(--pp-partner-black) !important;
}

@supports not (overflow:clip) {
  body.bu-page .pp-about-partner {
overflow:hidden;
  }
}

body.bu-page .pp-about-partner *,
body.bu-page .pp-about-partner *::before,
body.bu-page .pp-about-partner *::after {
box-sizing:border-box;
}

body.bu-page .pp-about-partner__shell {
position:relative;

  width:min(
    1360px,
    calc(100% - clamp(40px, 6vw, 96px))
  );

  max-width:100%;
  min-width:0;

  margin:0 auto;

  padding-left:max(0px, env(safe-area-inset-left));
  padding-right:max(0px, env(safe-area-inset-right));
}

body.bu-page .pp-about-partner__head {
width:100%;
  max-width:900px;

  margin:
    0
    0
    clamp(64px, 6vw, 104px);
}

body.bu-page .pp-about-partner__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;

  max-width:100%;

  margin:
    0
    0
    clamp(24px, 2.5vw, 34px);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1.2;
  font-weight:500;
  letter-spacing:.26em;
  text-transform:uppercase;

  white-space:normal;

  color:var(--pp-partner-accent) !important;
}

body.bu-page .pp-about-partner__eyebrow::before {
content:"";

  display:block;
  flex:0 0 auto;

  width:54px;
  height:1px;

  background:var(--pp-partner-accent);
}

body.bu-page .pp-about-partner__head h2 {
width:100%;
  max-width:800px;
  min-width:0;

  margin:0;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(54px, 5vw, 78px);
  line-height:.92;
  font-weight:500;
  letter-spacing:-.065em;
  text-transform:uppercase;

  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;
  text-wrap:balance;

  color:var(--pp-partner-black) !important;
}

body.bu-page .pp-about-partner__grid {
display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));

  column-gap:clamp(38px, 4vw, 84px);
  row-gap:clamp(64px, 5vw, 94px);

  width:100%;
  min-width:0;
}

body.bu-page .pp-about-partner__item {
position:relative;

  display:flex;
  flex-direction:column;
  align-items:flex-start;

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0;
  padding:4px 0 0;

  color:var(--pp-partner-black);

  transform:translateZ(0);

  transition:
    transform .45s cubic-bezier(.22,1,.36,1);
}

body.bu-page .pp-about-partner__item h3 {
width:100%;
  max-width:420px;
  min-width:0;

  margin:0 0 20px;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(30px, 2.35vw, 46px);
  line-height:.98;
  font-weight:500;
  letter-spacing:-.055em;

  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;
  hyphens:none;
  text-wrap:balance;

  color:var(--pp-partner-black) !important;

  transition:
    color .35s cubic-bezier(.22,1,.36,1);
}

body.bu-page .pp-about-partner__item p {
width:100%;
  max-width:470px;
  min-width:0;

  margin:0;

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(17px, 1.12vw, 21px);
  line-height:1.56;
  font-weight:400;
  letter-spacing:-.018em;

  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;
  hyphens:none;

  color:var(--pp-partner-grey) !important;
}

body.bu-page .pp-about-partner__icon {
display:flex;
  align-items:center;
  justify-content:flex-start;
  flex:0 0 auto;

  width:clamp(72px, 5vw, 94px);
  height:clamp(72px, 5vw, 94px);

  margin:
    0
    0
    clamp(28px, 2.5vw, 38px);

  color:var(--pp-partner-accent);

  transition:
    transform .45s cubic-bezier(.22,1,.36,1),
    color .45s cubic-bezier(.22,1,.36,1);
}

body.bu-page .pp-about-partner__icon svg {
display:block;

  width:100%;
  height:100%;

  overflow:visible;
}

body.bu-page .pp-about-partner__icon svg * {
fill:none;
  stroke:currentColor;
  stroke-width:2.8;
  stroke-linecap:round;
  stroke-linejoin:round;

  vector-effect:non-scaling-stroke;

  transition:
    stroke .4s cubic-bezier(.22,1,.36,1),
    stroke-width .4s cubic-bezier(.22,1,.36,1);
}

@media (hover:hover) and (pointer:fine) {
  body.bu-page .pp-about-partner__item:hover {
transform:translateY(-8px);
  }

  body.bu-page .pp-about-partner__item:hover h3 {
color:var(--pp-partner-accent) !important;
  }

  body.bu-page
  .pp-about-partner__item:hover
  .pp-about-partner__icon {
color:var(--pp-partner-black);

    transform:
      translateY(-5px)
      scale(1.06);
  }

  body.bu-page
  .pp-about-partner__item:hover
  .pp-about-partner__icon svg * {
stroke-width:3.1;
  }
}

@media (min-width:1800px) {
  body.bu-page .pp-about-partner {
padding:
      150px
      0
      150px;
  }

  body.bu-page .pp-about-partner__shell {
width:min(1480px, calc(100% - 140px));
  }

  body.bu-page .pp-about-partner__head {
max-width:980px;

    margin-bottom:112px;
  }

  body.bu-page .pp-about-partner__head h2 {
max-width:900px;

    font-size:84px;
  }

  body.bu-page .pp-about-partner__grid {
column-gap:92px;
    row-gap:104px;
  }

  body.bu-page .pp-about-partner__item h3 {
font-size:48px;
  }

  body.bu-page .pp-about-partner__item p {
font-size:22px;
  }
}

@media (min-width:1200px) and (max-width:1599px) {
  body.bu-page .pp-about-partner__shell {
width:min(1320px, calc(100% - 64px));
  }

  body.bu-page .pp-about-partner__grid {
column-gap:clamp(34px, 3.5vw, 64px);
  }

  body.bu-page .pp-about-partner__item h3 {
font-size:clamp(30px, 2.5vw, 42px);
  }
}

@media (max-width:1199px) {
  body.bu-page .pp-about-partner {
padding:
      104px
      0
      110px;
  }

  body.bu-page .pp-about-partner__shell {
width:calc(100% - 56px);
  }

  body.bu-page .pp-about-partner__head {
margin-bottom:72px;
  }

  body.bu-page .pp-about-partner__head h2 {
max-width:700px;

    font-size:clamp(52px, 6.5vw, 70px);
  }

  body.bu-page .pp-about-partner__grid {
grid-template-columns:repeat(2, minmax(0, 1fr));

    column-gap:clamp(40px, 6vw, 72px);
    row-gap:72px;
  }

  body.bu-page .pp-about-partner__item h3 {
max-width:480px;

    font-size:clamp(31px, 3.8vw, 42px);
  }

  body.bu-page .pp-about-partner__item p {
max-width:500px;

    font-size:18px;
  }
}

@media (max-width:991px) {
  body.bu-page .pp-about-partner {
padding:
      92px
      0
      100px;
  }

  body.bu-page .pp-about-partner__shell {
width:calc(100% - 44px);
  }

  body.bu-page .pp-about-partner__head {
margin-bottom:64px;
  }

  body.bu-page .pp-about-partner__eyebrow {
gap:15px;

    margin-bottom:25px;

    font-size:11px;
    letter-spacing:.22em;
  }

  body.bu-page .pp-about-partner__eyebrow::before {
width:42px;
  }

  body.bu-page .pp-about-partner__head h2 {
max-width:620px;

    font-size:clamp(48px, 7.5vw, 62px);
    line-height:.94;
  }

  body.bu-page .pp-about-partner__grid {
column-gap:42px;
    row-gap:64px;
  }

  body.bu-page .pp-about-partner__icon {
width:72px;
    height:72px;

    margin-bottom:26px;
  }

  body.bu-page .pp-about-partner__item h3 {
font-size:clamp(29px, 4.8vw, 38px);
    line-height:1;
  }

  body.bu-page .pp-about-partner__item p {
font-size:17px;
    line-height:1.55;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  body.bu-page .pp-about-partner {
padding:
      78px
      0
      88px;

    overflow:hidden;
  }

  body.bu-page .pp-about-partner__shell {
width:calc(100% - 32px);
  }

  body.bu-page .pp-about-partner__head {
max-width:100%;

    margin-bottom:54px;
  }

  body.bu-page .pp-about-partner__eyebrow {
gap:13px;

    margin-bottom:22px;

    font-size:10px;
    line-height:1.25;
    letter-spacing:.19em;
  }

  body.bu-page .pp-about-partner__eyebrow::before {
width:32px;
  }

  body.bu-page .pp-about-partner__head h2 {
max-width:100%;

    font-size:clamp(42px, 12vw, 58px);
    line-height:.94;
    letter-spacing:-.058em;
  }

  body.bu-page .pp-about-partner__grid {
display:grid;
    grid-template-columns:minmax(0, 1fr);

    width:100%;

    column-gap:0;
    row-gap:0;
  }

  body.bu-page .pp-about-partner__item {
display:grid;
    grid-template-columns:64px minmax(0, 1fr);
    grid-template-areas:
      "icon title"
      "icon text";

    column-gap:20px;
    row-gap:12px;

    width:100%;

    padding:
      32px
      0;

    border-top:1px solid var(--pp-partner-line);
  }

  body.bu-page .pp-about-partner__item:first-child {
padding-top:0;

    border-top:0;
  }

  body.bu-page .pp-about-partner__item:last-child {
padding-bottom:0;
  }

  body.bu-page .pp-about-partner__icon {
grid-area:icon;

    align-self:start;

    width:56px;
    height:56px;

    margin:0;

    justify-content:flex-start;
  }

  body.bu-page .pp-about-partner__item h3 {
grid-area:title;

    align-self:end;

    width:100%;
    max-width:none;

    margin:0;

    font-size:clamp(27px, 7.5vw, 36px);
    line-height:1;
    letter-spacing:-.05em;

    text-wrap:pretty;
  }

  body.bu-page .pp-about-partner__item p {
grid-area:text;

    width:100%;
    max-width:none;

    margin:0;

    font-size:16px;
    line-height:1.52;
    letter-spacing:-.012em;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:575px) {
  body.bu-page .pp-about-partner {
padding:
      70px
      0
      80px;
  }

  body.bu-page .pp-about-partner__shell {
width:calc(100% - 26px);
  }

  body.bu-page .pp-about-partner__head {
margin-bottom:46px;
  }

  body.bu-page .pp-about-partner__head h2 {
font-size:clamp(39px, 11vw, 50px);
    line-height:.96;
  }

  body.bu-page .pp-about-partner__item {
grid-template-columns:54px minmax(0, 1fr);

    column-gap:17px;
    row-gap:11px;

    padding:
      29px
      0;
  }

  body.bu-page .pp-about-partner__icon {
width:50px;
    height:50px;
  }

  body.bu-page .pp-about-partner__icon svg * {
stroke-width:2.6;
  }

  body.bu-page .pp-about-partner__item h3 {
font-size:clamp(25px, 7.2vw, 32px);
    line-height:1.02;
  }

  body.bu-page .pp-about-partner__item p {
font-size:15.5px;
    line-height:1.5;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

@media (max-width:390px) {
  body.bu-page .pp-about-partner {
padding:
      64px
      0
      72px;
  }

  body.bu-page .pp-about-partner__shell {
width:calc(100% - 22px);
  }

  body.bu-page .pp-about-partner__eyebrow {
font-size:9.5px;
    letter-spacing:.17em;
  }

  body.bu-page .pp-about-partner__eyebrow::before {
width:28px;
  }

  body.bu-page .pp-about-partner__head h2 {
font-size:clamp(36px, 10.8vw, 43px);
  }

  body.bu-page .pp-about-partner__item {
grid-template-columns:48px minmax(0, 1fr);

    column-gap:15px;

    padding:
      26px
      0;
  }

  body.bu-page .pp-about-partner__icon {
width:44px;
    height:44px;
  }

  body.bu-page .pp-about-partner__item h3 {
font-size:clamp(23px, 7vw, 28px);
  }

  body.bu-page .pp-about-partner__item p {
font-size:15px;
  }
}

@media (max-width:340px) {
  body.bu-page .pp-about-partner__shell {
width:calc(100% - 18px);
  }

  body.bu-page .pp-about-partner__head h2 {
font-size:34px;
  }

  body.bu-page .pp-about-partner__item {
display:block;

    padding:
      27px
      0;
  }

  body.bu-page .pp-about-partner__icon {
width:46px;
    height:46px;

    margin-bottom:17px;
  }

  body.bu-page .pp-about-partner__item h3 {
margin-bottom:12px;

    font-size:25px;
  }

  body.bu-page .pp-about-partner__item p {
font-size:14.5px;
  }
}

@media (prefers-reduced-motion:reduce) {
  body.bu-page .pp-about-partner__item,
  body.bu-page .pp-about-partner__item h3,
  body.bu-page .pp-about-partner__icon,
  body.bu-page .pp-about-partner__icon svg * {
transition:none !important;
  }
}

/* ========================================================= SUBLIMAÇÃO — COERÊNCIA COM DESIGN / TRANSFERS / LASER ========================================================= */

.pp-sublimation-split-hero .pp-design-split-hero__media img {
object-position:center;
  filter:saturate(.92) contrast(1.05) brightness(.92);
}

.pp-sublimation-intro {
background:#f4f1eb;
}

.pp-sublimation-intro .pp-trf-intro__visual img {
width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.94) contrast(1.04) brightness(.96);
}

.pp-sublimation-process {
background:#f4f1eb;
}

.pp-sublimation-cta .pp-design-sport-cta__media img {
object-position:center;
  filter:saturate(.9) contrast(1.08) brightness(.72);
}

body.bu-page .pp-sublimation-split-hero,
body.bu-page .pp-sublimation-intro,
body.bu-page .pp-sublimation-process,
body.bu-page .pp-sublimation-cta {
font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
}

/* MOBILE */

@media (max-width:767px) {
  .pp-sublimation-split-hero .pp-design-split-hero__media img {
object-position:center;
  }
}

/* ========================================================= LABORATÓRIO — PERFORMANCE STORY CSS ÚNICO E RESPONSIVO SLIDER SEMPRE HORIZONTAL 16:9 ========================================================= */

.pp-lab-performance-story {
--lab-black:#050505;
  --lab-white:#ffffff;
  --lab-accent:#A58667;
  --lab-muted:rgba(5,5,5,.64);
  --lab-line:rgba(5,5,5,.12);

  position:relative;
  isolation:isolate;

  display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0;
  padding:0;

  overflow:hidden;

  background:var(--lab-white);
  color:var(--lab-black);
}

.pp-lab-performance-story *,
.pp-lab-performance-story *::before,
.pp-lab-performance-story *::after {
box-sizing:border-box;
}

.pp-lab-performance-story__top {
position:relative;

  display:grid;

  grid-template-columns:
    minmax(270px, .72fr)
    minmax(0, 1.28fr);

  align-items:center;

  gap:clamp(48px, 6vw, 112px);

  width:min(
    1520px,
    calc(100% - clamp(48px, 5vw, 96px))
  );

  max-width:100%;
  min-width:0;

  margin:0 auto;

  padding:
    clamp(72px, 6vw, 108px)
    0
    clamp(64px, 5vw, 92px);

  background:var(--lab-white);
  color:var(--lab-black);
}

.pp-lab-performance-story__label {
position:relative;

  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;

  width:100%;
  max-width:100%;
  min-width:0;

  min-height:clamp(190px, 16vw, 280px);

  margin:0;

  padding-right:clamp(36px, 4.5vw, 76px);

  border-right:1px solid var(--lab-line);
}

.pp-lab-performance-story__label > span {
display:block;

  width:clamp(54px, 4.6vw, 88px);
  height:2px;

  margin:
    0
    0
    clamp(34px, 3.5vw, 56px);

  background:var(--lab-accent);
}

.pp-lab-performance-story__label h2 {
display:block;

  width:100%;
  max-width:9ch;
  min-width:0;

  margin:0;
  padding:0;

  color:var(--lab-black);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(32px, 3vw, 54px);
  line-height:.96;
  font-weight:500;
  letter-spacing:-.065em;
  text-transform:uppercase;

  word-break:normal;
  overflow-wrap:normal;
}

.pp-lab-performance-story__sgq {
display:block;

  width:clamp(108px, 10vw, 170px);
  max-width:100%;

  margin:
    clamp(28px, 3vw, 44px)
    0
    0;

  padding:0;

  overflow:visible;
}

.pp-lab-performance-story__sgq img {
display:block;

  width:100%;
  height:auto;
  max-width:100%;

  margin:0;
  padding:0;

  object-fit:contain;
  object-position:left center;

  filter:none;
  transform:none;
}

.pp-lab-performance-story__statement {
display:block;

  width:100%;
  max-width:1080px;
  min-width:0;

  margin:0;
  padding:0;
}

.pp-lab-performance-story__statement h3 {
display:block;

  width:100%;
  max-width:1040px;
  min-width:0;

  margin:0;
  padding:0;

  color:var(--lab-black);

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(30px, 3.05vw, 58px);
  line-height:1;
  font-weight:500;
  letter-spacing:-.066em;
  text-transform:uppercase;

  word-break:normal;
  overflow-wrap:break-word;
  text-wrap:balance;
}

.pp-lab-performance-story__statement p {
display:block;

  width:100%;
  max-width:820px;
  min-width:0;

  margin:
    clamp(28px, 3vw, 44px)
    0
    0;

  padding:0;

  color:var(--lab-muted);

  font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:clamp(17px, 1.05vw, 20px);
  line-height:1.6;
  font-weight:400;
  letter-spacing:-.025em;

  word-break:normal;
  overflow-wrap:break-word;
}

.pp-lab-performance-story__slider {
--lab-slider-accent:#A58667;
  --lab-slider-white:#ffffff;
  --lab-slider-black:#050505;

  position:relative;
  isolation:isolate;

  display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  margin:0;
  padding:0;

  overflow:hidden;

  border:0;
  border-radius:0;

  background:var(--lab-slider-black);
  box-shadow:none;
}

.pp-lab-performance-story__track {
position:relative;
  isolation:isolate;

  display:block;

  width:100%;
  max-width:100%;
  min-width:0;

  /*
    Esta é a regra que mantém a galeria
    verdadeiramente horizontal.
  */
  height:auto;
  min-height:0;
  max-height:none;
  aspect-ratio:16 / 9;

  margin:0;
  padding:0;

  overflow:hidden;

  border:0;
  border-radius:0;

  background:var(--lab-slider-black);
  box-shadow:none;
}

@supports not (aspect-ratio:16 / 9) {
  .pp-lab-performance-story__track {
height:0;
    padding-top:56.25%;
  }
}

.pp-lab-performance-story__slide {
position:absolute;
  inset:0;
  z-index:1;

  display:block;

  width:100%;
  height:100%;
  max-width:100%;
  min-width:0;

  margin:0;
  padding:0;

  overflow:hidden;

  border:0;
  border-radius:0;

  background:var(--lab-slider-black);

  opacity:0;
  visibility:hidden;
  pointer-events:none;

  transform:scale(1.012);
  transform-origin:center;

  transition:
    opacity .58s cubic-bezier(.22,1,.36,1),
    visibility .58s cubic-bezier(.22,1,.36,1),
    transform 1.1s cubic-bezier(.22,1,.36,1);
}

.pp-lab-performance-story__slide.is-active {
z-index:2;

  opacity:1;
  visibility:visible;
  pointer-events:auto;

  transform:scale(1);
}

.pp-lab-performance-story__slide img {
position:absolute;
  inset:0;

  display:block;

  width:100%;
  height:100%;
  max-width:none;
  min-width:100%;
  min-height:100%;

  margin:0;
  padding:0;

  /*
    Preenche todo o retângulo 16:9.
    Não cria barras brancas ou cinzentas.
  */
  object-fit:cover;
  object-position:center center;

  border:0;
  border-radius:0;

  background:transparent;

  opacity:1;
  visibility:visible;

  filter:
    saturate(.97)
    contrast(1.02)
    brightness(1);

  transform:translateZ(0);

  user-select:none;
  -webkit-user-select:none;
  -webkit-user-drag:none;

  backface-visibility:hidden;
}

.pp-lab-performance-story__slide:nth-child(1) img {
object-position:center center;
}

.pp-lab-performance-story__slide:nth-child(2) img {
object-position:center center;
}

.pp-lab-performance-story__slide:nth-child(3) img {
object-position:center center;
}

.pp-lab-performance-story__arrow {
position:absolute;
  top:50%;
  z-index:12;

  display:flex;
  align-items:center;
  justify-content:center;

  width:clamp(52px, 4vw, 68px);
  height:clamp(52px, 4vw, 68px);

  margin:0;
  padding:0;

  overflow:hidden;

  border:1px solid rgba(255,255,255,.34);
  border-radius:50%;

  background:rgba(5,5,5,.58);

  /*
    Esconde os símbolos escritos no HTML.
    Apenas a seta criada em CSS fica visível.
  */
  color:transparent;
  font-size:0;
  line-height:0;
  text-indent:-9999px;

  opacity:.92;
  visibility:visible;

  cursor:pointer;

  appearance:none;
  -webkit-appearance:none;

  transform:translateY(-50%);

  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 12px 34px rgba(0,0,0,.24);

  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;

  transition:
    opacity .35s cubic-bezier(.22,1,.36,1),
    background-color .35s cubic-bezier(.22,1,.36,1),
    border-color .35s cubic-bezier(.22,1,.36,1),
    transform .35s cubic-bezier(.22,1,.36,1),
    box-shadow .35s cubic-bezier(.22,1,.36,1);
}

.pp-lab-performance-story__arrow--prev {
left:clamp(18px, 2vw, 36px);
}

.pp-lab-performance-story__arrow--next {
right:clamp(18px, 2vw, 36px);
}

.pp-lab-performance-story__arrow::before {
content:"";

  position:absolute;
  top:50%;
  left:50%;

  display:block;

  width:13px;
  height:13px;

  border-top:2px solid var(--lab-slider-white);
  border-right:2px solid var(--lab-slider-white);

  pointer-events:none;
}

.pp-lab-performance-story__arrow--prev::before {
transform:
    translate(-36%, -50%)
    rotate(-135deg);
}

.pp-lab-performance-story__arrow--next::before {
transform:
    translate(-64%, -50%)
    rotate(45deg);
}

.pp-lab-performance-story__arrow:focus {
outline:0;
}

.pp-lab-performance-story__arrow:focus-visible {
outline:2px solid var(--lab-slider-white);
  outline-offset:4px;

  border-color:var(--lab-slider-accent);
  background:var(--lab-slider-accent);
}

.pp-lab-performance-story__arrow:active {
transform:
    translateY(-50%)
    scale(.94);
}

@media (hover:hover) and (pointer:fine) {
  .pp-lab-performance-story__arrow {
opacity:.72;
  }

  .pp-lab-performance-story__slider:hover
  .pp-lab-performance-story__arrow {
opacity:1;
  }

  .pp-lab-performance-story__arrow:hover {
border-color:var(--lab-slider-accent);
    background:var(--lab-slider-accent);

    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.18),
      0 18px 42px rgba(0,0,0,.30);
  }

  .pp-lab-performance-story__arrow--prev:hover {
transform:
      translateY(-50%)
      translateX(-3px);
  }

  .pp-lab-performance-story__arrow--next:hover {
transform:
      translateY(-50%)
      translateX(3px);
  }
}

.pp-lab-performance-story__dots {
position:absolute;
  left:clamp(22px, 2.4vw, 44px);
  bottom:clamp(20px, 2.2vw, 38px);
  z-index:13;

  display:flex;
  align-items:center;
  justify-content:flex-start;

  gap:9px;

  width:auto;
  min-width:0;

  margin:0;
  padding:0;

  border:0;

  background:transparent;
}

.pp-lab-performance-story__dots button {
display:block;
  flex:0 0 auto;

  width:10px;
  height:10px;
  min-width:0;
  min-height:0;

  margin:0;
  padding:0;

  overflow:hidden;

  border:0;
  border-radius:50%;

  background:rgba(255,255,255,.74);

  cursor:pointer;

  appearance:none;
  -webkit-appearance:none;

  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;

  transition:
    width .35s cubic-bezier(.22,1,.36,1),
    background-color .35s cubic-bezier(.22,1,.36,1),
    transform .35s cubic-bezier(.22,1,.36,1);
}

.pp-lab-performance-story__dots button.is-active {
width:54px;

  border-radius:999px;

  background:var(--lab-slider-accent);
}

.pp-lab-performance-story__dots button:focus {
outline:0;
}

.pp-lab-performance-story__dots button:focus-visible {
outline:2px solid var(--lab-slider-white);
  outline-offset:4px;
}

@media (hover:hover) and (pointer:fine) {
  .pp-lab-performance-story__dots button:hover {
transform:scale(1.12);

    background:var(--lab-slider-white);
  }

  .pp-lab-performance-story__dots button.is-active:hover {
transform:none;

    background:var(--lab-slider-accent);
  }
}

@media (min-width:1800px) {
  .pp-lab-performance-story__top {
width:min(1660px, calc(100% - 140px));

    gap:130px;

    padding:
      116px
      0
      104px;
  }

  .pp-lab-performance-story__label h2 {
font-size:58px;
  }

  .pp-lab-performance-story__statement h3 {
max-width:1120px;

    font-size:62px;
  }

  .pp-lab-performance-story__track {
aspect-ratio:16 / 9;
  }

  .pp-lab-performance-story__arrow {
width:70px;
    height:70px;
  }

  .pp-lab-performance-story__arrow--prev {
left:38px;
  }

  .pp-lab-performance-story__arrow--next {
right:38px;
  }

  .pp-lab-performance-story__arrow::before {
width:14px;
    height:14px;
  }

  .pp-lab-performance-story__dots {
left:46px;
    bottom:40px;
  }
}

@media (min-width:1200px) and (max-width:1799px) {
  .pp-lab-performance-story__top {
width:min(1500px, calc(100% - 80px));
  }

  .pp-lab-performance-story__track {
aspect-ratio:16 / 9;
  }
}

@media (max-width:1199px) {
  .pp-lab-performance-story__top {
grid-template-columns:minmax(0, 1fr);

    gap:clamp(38px, 5vw, 62px);

    width:calc(100% - 56px);

    padding:
      clamp(66px, 7vw, 96px)
      0
      clamp(56px, 6vw, 82px);
  }

  .pp-lab-performance-story__label {
min-height:0;

    padding:
      0
      0
      clamp(34px, 4vw, 52px);

    border-right:0;
    border-bottom:1px solid var(--lab-line);
  }

  .pp-lab-performance-story__label > span {
margin-bottom:clamp(30px, 4vw, 46px);
  }

  .pp-lab-performance-story__label h2 {
max-width:11ch;

    font-size:clamp(34px, 5vw, 54px);
  }

  .pp-lab-performance-story__sgq {
width:clamp(110px, 16vw, 150px);
  }

  .pp-lab-performance-story__statement h3 {
font-size:clamp(32px, 5.4vw, 56px);
    line-height:1;
  }

  .pp-lab-performance-story__statement p {
max-width:760px;

    margin-top:28px;
  }

  .pp-lab-performance-story__track {
height:auto;
    min-height:0;
    max-height:none;

    aspect-ratio:16 / 9;
  }
}

@media (min-width:768px) and (max-width:991px) {
  .pp-lab-performance-story__top {
width:calc(100% - 44px);
  }

  .pp-lab-performance-story__track {
height:auto;
    min-height:0;
    max-height:none;

    aspect-ratio:16 / 9;
  }

  .pp-lab-performance-story__arrow {
width:48px;
    height:48px;

    opacity:1;
  }

  .pp-lab-performance-story__arrow--prev {
left:16px;
  }

  .pp-lab-performance-story__arrow--next {
right:16px;
  }

  .pp-lab-performance-story__arrow::before {
width:11px;
    height:11px;
  }

  .pp-lab-performance-story__dots {
left:20px;
    bottom:18px;
  }

  .pp-lab-performance-story__dots button {
width:9px;
    height:9px;
  }

  .pp-lab-performance-story__dots button.is-active {
width:42px;
  }
}

/* ========================================================= MOBILE SLIDER CONTINUA HORIZONTAL 16:9 ========================================================= */

@media (max-width:767px) {
  .pp-lab-performance-story__top {
grid-template-columns:minmax(0, 1fr);

    gap:30px;

    width:calc(100% - 30px);

    padding:
      56px
      0
      52px;
  }

  .pp-lab-performance-story__label {
min-height:0;

    padding-bottom:30px;
  }

  .pp-lab-performance-story__label > span {
width:54px;
    height:1px;

    margin-bottom:24px;
  }

  .pp-lab-performance-story__label h2 {
max-width:100%;

    font-size:clamp(30px, 8vw, 42px);
    line-height:.96;
    letter-spacing:-.058em;
  }

  .pp-lab-performance-story__sgq {
width:110px;

    margin-top:26px;
  }

  .pp-lab-performance-story__statement h3 {
font-size:clamp(26px, 7vw, 38px);
    line-height:1.02;
    letter-spacing:-.055em;
  }

  .pp-lab-performance-story__statement p {
margin-top:22px;

    font-size:16px;
    line-height:1.55;
  }

  .pp-lab-performance-story__slider {
width:100%;
    max-width:100%;

    margin:0;
    padding:0;
  }

  .pp-lab-performance-story__track {
width:100%;

    height:auto;
    min-height:0;
    max-height:none;

    aspect-ratio:16 / 9;
  }

  .pp-lab-performance-story__slide img {
width:100%;
    height:100%;

    object-fit:cover;
    object-position:center center;

    filter:
      saturate(.98)
      contrast(1.01)
      brightness(1);
  }

  .pp-lab-performance-story__arrow {
width:40px;
    height:40px;

    opacity:1;

    font-size:0;
    line-height:0;
    color:transparent;
    text-indent:-9999px;
  }

  .pp-lab-performance-story__arrow--prev {
left:10px;
  }

  .pp-lab-performance-story__arrow--next {
right:10px;
  }

  .pp-lab-performance-story__arrow::before {
width:9px;
    height:9px;

    border-top-width:2px;
    border-right-width:2px;
  }

  .pp-lab-performance-story__dots {
left:14px;
    bottom:12px;

    gap:7px;
  }

  .pp-lab-performance-story__dots button {
width:8px;
    height:8px;
  }

  .pp-lab-performance-story__dots button.is-active {
width:28px;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:480px) {
  .pp-lab-performance-story__top {
width:calc(100% - 24px);

    padding:
      50px
      0
      46px;
  }

  .pp-lab-performance-story__label h2,
  .pp-lab-performance-story__statement h3 {
font-size:30px;
  }

  .pp-lab-performance-story__track {
height:auto;
    min-height:0;
    max-height:none;

    aspect-ratio:16 / 9;
  }

  .pp-lab-performance-story__arrow {
width:38px;
    height:38px;
  }

  .pp-lab-performance-story__arrow--prev {
left:9px;
  }

  .pp-lab-performance-story__arrow--next {
right:9px;
  }

  .pp-lab-performance-story__arrow::before {
width:8px;
    height:8px;
  }

  .pp-lab-performance-story__dots {
left:12px;
    bottom:10px;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

@media (max-width:390px) {
  .pp-lab-performance-story__top {
width:calc(100% - 20px);
  }

  .pp-lab-performance-story__statement p {
font-size:15.5px;
  }

  .pp-lab-performance-story__track {
height:auto;
    min-height:0;
    max-height:none;

    aspect-ratio:16 / 9;
  }

  .pp-lab-performance-story__arrow {
width:35px;
    height:35px;
  }

  .pp-lab-performance-story__arrow--prev {
left:7px;
  }

  .pp-lab-performance-story__arrow--next {
right:7px;
  }

  .pp-lab-performance-story__dots {
left:10px;
    bottom:8px;
  }

  .pp-lab-performance-story__dots button {
width:7px;
    height:7px;
  }

  .pp-lab-performance-story__dots button.is-active {
width:24px;
  }
}

/* ========================================================= MOBILE / TABLET HORIZONTAL ========================================================= */

@media (max-width:900px) and (orientation:landscape) {
  .pp-lab-performance-story__track {
width:100%;

    height:auto;
    min-height:0;
    max-height:none;

    aspect-ratio:16 / 9;
  }

  .pp-lab-performance-story__slide img {
object-fit:cover;
    object-position:center center;
  }

  .pp-lab-performance-story__arrow {
width:38px;
    height:38px;
  }

  .pp-lab-performance-story__dots {
bottom:10px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-lab-performance-story__slide,
  .pp-lab-performance-story__arrow,
  .pp-lab-performance-story__dots button {
transition:none;
  }
}

/* ========================================================= LABORATÓRIO — O QUE AVALIAMOS / PP CLEAN ========================================================= */

.pp-lab-evaluation {
--eval-black:#050505;
  --eval-white:#ffffff;
  --eval-accent:var(--primary, #A58667);
  --eval-muted:rgba(5,5,5,.62);
  --eval-line:rgba(5,5,5,.12);

  position:relative;
  width:100%;
  overflow:hidden;
  isolation:isolate;

  padding:clamp(92px, 8vw, 148px) 0 clamp(96px, 8vw, 156px);
  background:#ffffff;
  color:var(--eval-black);
}

.pp-lab-evaluation *,
.pp-lab-evaluation *::before,
.pp-lab-evaluation *::after {
box-sizing:border-box;
}

.pp-lab-evaluation__shell {
width:min(1520px, calc(100% - 72px));
  margin:0 auto;
}

.pp-lab-evaluation__head {
max-width:1040px;
  margin:0 auto clamp(78px, 7vw, 126px);
  text-align:center;
}

.pp-lab-evaluation__eyebrow {
display:block;
  margin:0 0 clamp(18px, 1.8vw, 28px);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(12px, .82vw, 15px);
  line-height:1;
  font-weight:500;
  letter-spacing:.32em;
  text-transform:uppercase;

  color:var(--eval-accent);
}

.pp-lab-evaluation__mark {
display:block;
  width:clamp(34px, 3vw, 54px);
  height:2px;
  margin:0 auto clamp(34px, 3vw, 54px);
  background:var(--eval-accent);
}

.pp-lab-evaluation__head p {
max-width:950px;
  margin:0 auto;

  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(22px, 2vw, 34px);
  line-height:1.42;
  font-weight:400;
  letter-spacing:-.045em;

  color:rgba(5,5,5,.86);
}

.pp-lab-evaluation__grid {
display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  border-top:0;
}

.pp-lab-evaluation__item {
position:relative;
  min-height:clamp(320px, 25vw, 430px);

  display:flex;
  flex-direction:column;
  justify-content:flex-start;

  padding:
    clamp(42px, 4vw, 66px)
    clamp(28px, 3vw, 52px)
    clamp(38px, 3.2vw, 58px);

  border-left:1px solid var(--eval-line);
}

.pp-lab-evaluation__item:first-child {
border-left:0;
}

.pp-lab-evaluation__line {
display:block;
  width:clamp(34px, 3vw, 52px);
  height:2px;
  margin-bottom:clamp(28px, 3vw, 48px);
  background:var(--eval-accent);
}

.pp-lab-evaluation__number {
display:block;
  margin-bottom:clamp(28px, 3vw, 44px);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(12px, .85vw, 15px);
  line-height:1;
  font-weight:500;
  letter-spacing:.22em;
  text-transform:uppercase;

  color:rgba(165,134,103,.72);
}

.pp-lab-evaluation__item h3 {
max-width:10.5ch;
  margin:0 0 clamp(34px, 3.2vw, 54px);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(28px, 2.75vw, 48px);
  line-height:.98;
  font-weight:500;
  letter-spacing:-.07em;
  text-transform:none;

  color:#050505;
}

.pp-lab-evaluation__item p {
max-width:29ch;
  margin:0;

  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(17px, 1.08vw, 20px);
  line-height:1.68;
  font-weight:400;
  letter-spacing:-.025em;

  color:var(--eval-muted);
}

@media (hover:hover) {
  .pp-lab-evaluation__item {
transition:
      background .35s cubic-bezier(.22,1,.36,1),
      padding-left .35s cubic-bezier(.22,1,.36,1);
  }

  .pp-lab-evaluation__item:hover {
background:#faf9f7;
    padding-left:clamp(34px, 3.4vw, 64px);
  }

  .pp-lab-evaluation__item:hover .pp-lab-evaluation__line {
width:clamp(48px, 4vw, 72px);
  }

  .pp-lab-evaluation__line {
transition:width .35s cubic-bezier(.22,1,.36,1);
  }
}

@media (max-width:1399px) {
  .pp-lab-evaluation__shell {
width:min(1320px, calc(100% - 56px));
  }

  .pp-lab-evaluation__item {
padding-left:clamp(26px, 2.6vw, 42px);
    padding-right:clamp(26px, 2.6vw, 42px);
  }

  .pp-lab-evaluation__item h3 {
font-size:clamp(27px, 2.55vw, 42px);
  }
}

@media (max-width:1199px) {
  .pp-lab-evaluation {
padding:clamp(82px, 8vw, 118px) 0;
  }

  .pp-lab-evaluation__head {
margin-bottom:clamp(58px, 7vw, 88px);
  }

  .pp-lab-evaluation__head p {
font-size:clamp(22px, 3vw, 32px);
  }

  .pp-lab-evaluation__grid {
grid-template-columns:repeat(2, minmax(0, 1fr));
    border-top:1px solid var(--eval-line);
  }

  .pp-lab-evaluation__item {
min-height:340px;
    border-left:0;
    border-bottom:1px solid var(--eval-line);
  }

  .pp-lab-evaluation__item:nth-child(even) {
border-left:1px solid var(--eval-line);
  }

  .pp-lab-evaluation__item:nth-last-child(-n/**/+2) {
border-bottom:0;
  }
}

@media (max-width:767px) {
  .pp-lab-evaluation {
padding:72px 0 82px;
  }

  .pp-lab-evaluation__shell {
width:calc(100% - 30px);
  }

  .pp-lab-evaluation__head {
max-width:none;
    margin-bottom:52px;
    text-align:left;
  }

  .pp-lab-evaluation__eyebrow {
font-size:11px;
    letter-spacing:.26em;
  }

  .pp-lab-evaluation__mark {
margin-left:0;
    margin-bottom:28px;
  }

  .pp-lab-evaluation__head p {
max-width:none;
    font-size:clamp(22px, 6.4vw, 34px);
    line-height:1.32;
    letter-spacing:-.052em;
  }

  .pp-lab-evaluation__grid {
grid-template-columns:1fr;
    border-top:1px solid var(--eval-line);
  }

  .pp-lab-evaluation__item,
  .pp-lab-evaluation__item:nth-child(even) {
min-height:auto;
    border-left:0;
    border-bottom:1px solid var(--eval-line);
    padding:34px 0 38px;
  }

  .pp-lab-evaluation__item:last-child {
border-bottom:0;
  }

  .pp-lab-evaluation__line {
width:44px;
    height:1px;
    margin-bottom:24px;
  }

  .pp-lab-evaluation__number {
margin-bottom:22px;
    font-size:12px;
  }

  .pp-lab-evaluation__item h3 {
max-width:12ch;
    margin-bottom:24px;
    font-size:clamp(34px, 9vw, 48px);
    line-height:.98;
  }

  .pp-lab-evaluation__item p {
max-width:36ch;
    font-size:17px;
    line-height:1.58;
  }
}

@media (max-width:420px) {
  .pp-lab-evaluation__shell {
width:calc(100% - 24px);
  }

  .pp-lab-evaluation__head p {
font-size:22px;
  }

  .pp-lab-evaluation__item h3 {
font-size:32px;
  }
}

/* ========================================================= CAREERS — PAGE / PP TÊXTEIS ========================================================= */

.pp-careers-apply {
--careers-black:#050505;
  --careers-white:#ffffff;
  --careers-accent:var(--primary, #A58667);
  --careers-line:rgba(255,255,255,.14);
  --careers-muted:rgba(255,255,255,.64);
  --careers-soft:rgba(255,255,255,.04);

  position:relative;
  width:100%;
  overflow:hidden;
  isolation:isolate;

  background:#050505;
  color:#ffffff;
}

.pp-careers-apply * {
box-sizing:border-box;
}

.pp-careers-openings .container,
.pp-careers-apply .container {
width:min(1380px, calc(100% - 72px));
  max-width:none;
  margin:0 auto;
  padding-left:0;
  padding-right:0;
}

/* ========================================================= CAREERS — OPEN POSITIONS ========================================================= */

/* ========================================================= CAREERS — SPONTANEOUS APPLICATION ========================================================= */

.pp-careers-apply {
padding:clamp(92px, 8vw, 136px) 0;
}

.pp-careers-apply__layout {
display:grid;
  grid-template-columns:minmax(320px, .9fr) minmax(0, 1.1fr);
  gap:clamp(44px, 6vw, 96px);
  align-items:start;
}

.pp-careers-apply__intro {
max-width:560px;
}

.pp-careers-apply__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;
  margin-bottom:clamp(22px, 2vw, 28px);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(12px, .82vw, 14px);
  line-height:1;
  font-weight:500;
  letter-spacing:.28em;
  text-transform:uppercase;

  color:var(--careers-accent);
}

.pp-careers-apply__eyebrow::before {
content:"";
  width:clamp(44px, 4.4vw, 72px);
  height:1px;
  background:var(--careers-accent);
}

.pp-careers-apply__intro h2 {
max-width:12ch;
  margin:0 0 clamp(18px, 2vw, 24px);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(44px, 5.2vw, 88px);
  line-height:.94;
  font-weight:500;
  letter-spacing:-.075em;

  color:#ffffff;
}

.pp-careers-apply__intro p {
max-width:650px;
  margin:0;

  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(18px, 1.18vw, 21px);
  line-height:1.72;
  font-weight:400;
  letter-spacing:-.028em;

  color:var(--careers-muted);
}

.pp-careers-apply__form {
padding:clamp(30px, 2.8vw, 42px);

  border:1px solid rgba(255,255,255,.12);
  border-radius:30px;
  background:rgba(255,255,255,.04);

  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.pp-careers-apply__grid {
display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:22px;
}

.pp-careers-field {
display:flex;
  flex-direction:column;
  gap:10px;
}

.pp-careers-field--full {
grid-column:1 / -1;
}

.pp-careers-field label {
font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:14px;
  line-height:1.2;
  font-weight:500;
  letter-spacing:.08em;
  text-transform:uppercase;

  color:#ffffff;
}

.pp-careers-field input,
.pp-careers-field select,
.pp-careers-field textarea {
width:100%;
  min-height:58px;
  padding:16px 18px;

  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  background:rgba(255,255,255,.04);
  outline:none;

  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:16px;
  line-height:1.45;
  font-weight:400;
  letter-spacing:-.02em;

  color:#ffffff;

  transition:
    border-color .28s ease,
    box-shadow .28s ease,
    background .28s ease;
}

.pp-careers-field textarea {
min-height:180px;
  resize:vertical;
  padding-top:16px;
}

.pp-careers-field input::placeholder,
.pp-careers-field textarea::placeholder {
color:rgba(255,255,255,.34);
}

.pp-careers-field select {
appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  cursor:pointer;
}

.pp-careers-field input:focus,
.pp-careers-field select:focus,
.pp-careers-field textarea:focus {
border-color:rgba(165,134,103,.72);
  box-shadow:0 0 0 4px rgba(165,134,103,.12);
  background:rgba(255,255,255,.06);
}

.pp-careers-apply__actions {
margin-top:30px;
  display:flex;
  align-items:center;
}

/* ========================================================= CAREERS FORM — CTA BUTTONS MESMO DESIGN DO BOTÃO DO CONTACTO ========================================================= */

.pp-careers-apply .pp-careers-form-cta {
all:unset;

  box-sizing:border-box !important;

  position:relative !important;
  isolation:isolate !important;

  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;

  gap:22px !important;

  width:fit-content !important;
  max-width:100% !important;

  min-width:0 !important;
  min-height:62px !important;

  padding:0 18px 0 30px !important;
  margin:0 !important;

  overflow:hidden !important;

  border:1px solid rgba(255,255,255,.32) !important;
  border-radius:999px !important;

  background:rgba(255,255,255,.055) !important;
  color:#ffffff !important;

  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 16px 46px rgba(0,0,0,.24) !important;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    ) !important;

  font-size:12px !important;
  line-height:1 !important;
  font-weight:500 !important;

  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  text-align:center !important;

  white-space:nowrap !important;

  cursor:pointer !important;

  transition:
    color .38s cubic-bezier(.22,1,.36,1),
    border-color .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1),
    box-shadow .38s cubic-bezier(.22,1,.36,1) !important;
}

.pp-careers-apply .pp-careers-form-cta::before {
content:"" !important;

  position:absolute !important;
  inset:0 !important;

  z-index:-1 !important;

  display:block !important;

  border-radius:inherit !important;

  background:#ffffff !important;

  transform:translateY(105%) !important;

  transition:
    transform .46s cubic-bezier(.22,1,.36,1) !important;
}

.pp-careers-apply .pp-careers-form-cta::after {
content:none !important;
  display:none !important;
}

.pp-careers-apply .pp-careers-form-cta > i {
all:unset;

  box-sizing:border-box !important;

  position:relative !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  flex:0 0 42px !important;

  width:42px !important;
  height:42px !important;

  border-radius:50% !important;

  background:#A58667 !important;
  color:#ffffff !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 10px 26px rgba(165,134,103,.24) !important;

  transition:
    background-color .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1),
    color .38s cubic-bezier(.22,1,.36,1) !important;
}

.pp-careers-apply .pp-careers-form-cta > i::before {
content:"" !important;

  position:absolute !important;

  left:50% !important;
  top:50% !important;

  width:15px !important;
  height:1px !important;

  background:#ffffff !important;

  transform:translate(-52%, -50%) !important;
}

.pp-careers-apply .pp-careers-form-cta > i::after {
content:"" !important;

  position:absolute !important;

  left:50% !important;
  top:50% !important;

  width:7px !important;
  height:7px !important;

  border:0 !important;
  border-top:1px solid #ffffff !important;
  border-right:1px solid #ffffff !important;

  background:transparent !important;

  transform:
    translate(-6%, -50%)
    rotate(45deg) !important;
}

.pp-careers-apply__actions {
margin-top:32px;

  display:flex;
  align-items:center;
  justify-content:flex-start;
}

@media (hover:hover) and (pointer:fine) {
  .pp-careers-apply .pp-careers-form-cta:hover {
color:#050505 !important;

    border-color:#ffffff !important;

    transform:translateY(-2px) !important;

    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.24),
      0 22px 60px rgba(0,0,0,.32) !important;
  }

  .pp-careers-apply .pp-careers-form-cta:hover::before {
transform:translateY(0) !important;
  }

  .pp-careers-apply .pp-careers-form-cta:hover > i {
background:#050505 !important;
    color:#ffffff !important;

    transform:translateX(4px) !important;
  }
}

.pp-careers-apply .pp-careers-form-cta:focus-visible {
outline:2px solid #ffffff !important;
  outline-offset:4px !important;
}

.pp-careers-apply .pp-careers-form-cta:active {
transform:scale(.985) !important;
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-careers-apply__actions {
margin-top:26px;
  }

  .pp-careers-apply .pp-careers-form-cta {
min-height:56px !important;

    padding:
      0
      9px
      0
      21px !important;

    gap:16px !important;

    font-size:11px !important;
    letter-spacing:.12em !important;
  }

  .pp-careers-apply .pp-careers-form-cta > i {
flex-basis:40px !important;

    width:40px !important;
    height:40px !important;
  }
}

@media (max-width:575px) {
  .pp-careers-apply .pp-careers-form-cta {
min-height:54px !important;

    padding:
      0
      8px
      0
      19px !important;

    gap:14px !important;

    font-size:10.5px !important;
    letter-spacing:.115em !important;
  }

  .pp-careers-apply .pp-careers-form-cta > i {
flex-basis:38px !important;

    width:38px !important;
    height:38px !important;
  }

  .pp-careers-apply .pp-careers-form-cta > i::before {
width:14px !important;
  }
}

@media (max-width:1199px) {
  .pp-careers-openings .container,
  .pp-careers-apply .container {
width:calc(100% - 48px);
  }

  .pp-careers-apply__layout {
grid-template-columns:1fr;
    gap:40px;
  }

  .pp-careers-apply__intro {
max-width:760px;
  }

  .pp-careers-apply__intro h2 {
max-width:13ch;
  }
}

@media (max-width:767px) {
  .pp-careers-apply {
padding:78px 0 84px;
  }

  .pp-careers-openings .container,
  .pp-careers-apply .container {
width:calc(100% - 30px);
  }

  .pp-careers-apply__eyebrow {
gap:14px;
    margin-bottom:20px;
    font-size:11px;
    letter-spacing:.24em;
  }

  .pp-careers-apply__eyebrow::before {
width:36px;
  }

  .pp-careers-apply__intro h2 {
font-size:clamp(38px, 10vw, 58px);
    line-height:.96;
  }

  .pp-careers-apply__intro p {
font-size:16px;
    line-height:1.65;
  }

  .pp-careers-apply__form {
padding:22px 18px;
    border-radius:22px;
  }

  .pp-careers-apply__grid {
grid-template-columns:1fr;
    gap:18px;
  }

  .pp-careers-field--full {
grid-column:auto;
  }

  .pp-careers-field input,
  .pp-careers-field select,
  .pp-careers-field textarea {
min-height:54px;
    padding:15px 16px;
    border-radius:16px;
    font-size:15px;
  }

  .pp-careers-field textarea {
min-height:160px;
  }
}

@media (max-width:420px) {
  .pp-careers-openings .container,
  .pp-careers-apply .container {
width:calc(100% - 24px);
  }

  .pp-careers-apply__intro h2 {
font-size:34px;
  }
}

/* ========================================================= CAREERS — PP TÊXTEIS FILE UPLOAD ========================================================= */

.pp-careers-doc-upload {
width:100%;
  margin-top:14px;
}

.pp-careers-doc-upload__input {
position:absolute !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

.pp-careers-doc-upload__choose {
position:relative;

  box-sizing:border-box;

  display:flex;
  align-items:center;

  width:100%;
  min-height:76px;

  padding:
    10px
    22px
    10px
    10px;

  gap:16px;

  overflow:hidden;

  border:1px solid rgba(255,255,255,.16);
  border-radius:18px;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,.055),
      rgba(255,255,255,.025)
    );

  color:#ffffff;

  cursor:pointer;

  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06);

  transition:
    border-color .35s cubic-bezier(.22,1,.36,1),
    background-color .35s cubic-bezier(.22,1,.36,1),
    transform .35s cubic-bezier(.22,1,.36,1),
    box-shadow .35s cubic-bezier(.22,1,.36,1);
}

.pp-careers-doc-upload__choose::before {
content:"";

  position:absolute;
  left:0;
  top:18px;
  bottom:18px;

  width:2px;

  border-radius:99px;

  background:#A58667;

  transform:scaleY(.45);
  opacity:0;

  transition:
    transform .4s cubic-bezier(.22,1,.36,1),
    opacity .3s ease;
}

.pp-careers-doc-upload__mark {
flex:0 0 54px;

  width:54px;
  height:54px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:14px;

  background:#A58667;
  color:#ffffff;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 10px 24px rgba(165,134,103,.16);

  transition:
    transform .38s cubic-bezier(.22,1,.36,1),
    background-color .38s ease;
}

.pp-careers-doc-upload__mark svg {
width:22px;
  height:22px;

  fill:none;

  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.pp-careers-doc-upload__copy {
min-width:0;

  display:flex;
  flex:1;
  flex-direction:column;

  gap:4px;
}

.pp-careers-doc-upload__copy strong {
font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1;

  font-weight:500;

  letter-spacing:.15em;
  text-transform:uppercase;

  color:#ffffff;
}

.pp-careers-doc-upload__copy small {
font-family:
    var(
      --pp-font-body,
      "URWGeometricMedium",
      "Figtree",
      Arial,
      sans-serif
    );

  font-size:12px;
  line-height:1.2;

  letter-spacing:.02em;

  color:rgba(255,255,255,.42);
}

.pp-careers-doc-upload__plus {
position:relative;

  flex:0 0 36px;

  width:36px;
  height:36px;

  border:1px solid rgba(255,255,255,.14);
  border-radius:50%;

  transition:
    background-color .35s ease,
    border-color .35s ease,
    transform .4s cubic-bezier(.22,1,.36,1);
}

.pp-careers-doc-upload__plus i {
position:absolute;

  left:50%;
  top:50%;

  width:12px;
  height:1px;

  background:#ffffff;

  transform:translate(-50%,-50%);
}

.pp-careers-doc-upload__plus i:last-child {
transform:
    translate(-50%,-50%)
    rotate(90deg);
}

@media (hover:hover) and (pointer:fine) {
  .pp-careers-doc-upload__choose:hover {
border-color:rgba(165,134,103,.65);

    background:
      linear-gradient(
        135deg,
        rgba(255,255,255,.075),
        rgba(165,134,103,.035)
      );

    transform:translateY(-2px);

    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.09),
      0 18px 40px rgba(0,0,0,.18);
  }

  .pp-careers-doc-upload__choose:hover::before {
opacity:1;
    transform:scaleY(1);
  }

  .pp-careers-doc-upload__choose:hover
  .pp-careers-doc-upload__mark {
transform:scale(.94);
  }

  .pp-careers-doc-upload__choose:hover
  .pp-careers-doc-upload__plus {
border-color:#A58667;
    background:#A58667;

    transform:rotate(90deg);
  }
}

.pp-careers-doc-upload__selected {
box-sizing:border-box;

  display:flex;
  align-items:center;

  width:100%;
  min-height:76px;

  padding:
    10px
    14px
    10px
    10px;

  gap:16px;

  border:1px solid rgba(165,134,103,.30);
  border-radius:18px;

  background:
    linear-gradient(
      135deg,
      rgba(165,134,103,.08),
      rgba(255,255,255,.025)
    );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06);
}

.pp-careers-doc-upload__selected[hidden] {
display:none !important;
}

.pp-careers-doc-upload__mark--selected {
background:#A58667;
}

.pp-careers-doc-upload__selected-copy {
min-width:0;

  display:flex;
  flex:1;
  flex-direction:column;

  gap:4px;
}

.pp-careers-doc-upload__selected-copy small {
font-family:var(--pp-font-body);

  font-size:10px;
  line-height:1;

  font-weight:500;

  letter-spacing:.16em;
  text-transform:uppercase;

  color:#A58667;
}

.pp-careers-doc-upload__selected-copy strong {
overflow:hidden;

  font-family:var(--pp-font-body);

  font-size:14px;
  line-height:1.25;

  font-weight:500;

  letter-spacing:-.01em;

  color:#ffffff;

  text-overflow:ellipsis;
  white-space:nowrap;
}

.pp-careers-doc-upload__remove {
all:unset;

  box-sizing:border-box;

  position:relative;

  flex:0 0 40px;

  width:40px;
  height:40px;

  border:1px solid rgba(255,255,255,.14);
  border-radius:50%;

  cursor:pointer;

  transition:
    background-color .3s ease,
    border-color .3s ease,
    transform .3s ease;
}

.pp-careers-doc-upload__remove i {
position:absolute;

  left:50%;
  top:50%;

  width:12px;
  height:1px;

  background:#ffffff;
}

.pp-careers-doc-upload__remove i:first-child {
transform:
    translate(-50%,-50%)
    rotate(45deg);
}

.pp-careers-doc-upload__remove i:last-child {
transform:
    translate(-50%,-50%)
    rotate(-45deg);
}

@media (hover:hover) and (pointer:fine) {
  .pp-careers-doc-upload__remove:hover {
background:#A58667;
    border-color:#A58667;

    transform:rotate(90deg);
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:575px) {
  .pp-careers-doc-upload__choose,
  .pp-careers-doc-upload__selected {
min-height:68px;

    padding:
      8px
      12px
      8px
      8px;

    gap:12px;

    border-radius:16px;
  }

  .pp-careers-doc-upload__mark {
flex-basis:50px;

    width:50px;
    height:50px;

    border-radius:13px;
  }

  .pp-careers-doc-upload__copy strong {
font-size:10.5px;
    letter-spacing:.12em;
  }

  .pp-careers-doc-upload__copy small {
font-size:10.5px;
  }

  .pp-careers-doc-upload__plus {
flex-basis:32px;

    width:32px;
    height:32px;
  }

  .pp-careers-doc-upload__selected-copy strong {
font-size:12px;
  }

  .pp-careers-doc-upload__remove {
flex-basis:36px;

    width:36px;
    height:36px;
  }
}

.pp-form-honeypot {
position:absolute !important;
  left:-99999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* ========================================================= CAREERS — NO OPEN POSITIONS ========================================================= */

.pp-careers-empty {
position:relative;
  padding:clamp(130px, 10vw, 190px) 0 clamp(100px, 8vw, 140px);
  background:#000000;
  color:#ffffff;
  overflow:hidden;
}

.pp-careers-empty::before {
content:"";
  position:absolute;
  inset:auto 0 0;
  height:45%;
  pointer-events:none;
  background:
    #000000;
}

.pp-careers-empty__inner {
position:relative;
  z-index:2;
  max-width:920px;
  margin:0 auto;
  text-align:center;
}

.pp-careers-empty__eyebrow {
display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  margin-bottom:clamp(24px, 2vw, 34px);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(12px, .82vw, 14px);
  line-height:1;
  font-weight:500;
  letter-spacing:.28em;
  text-transform:uppercase;

  color:var(--careers-accent, #A58667);
}

.pp-careers-empty__eyebrow::before,
.pp-careers-empty__eyebrow::after {
content:"";
  width:clamp(44px, 4.4vw, 72px);
  height:1px;
  background:var(--careers-accent, #A58667);
}

.pp-careers-empty h2 {
max-width:12ch;
  margin:0 auto clamp(24px, 2.5vw, 36px);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(56px, 7.2vw, 118px);
  line-height:.9;
  font-weight:500;
  letter-spacing:-.078em;

  color:#ffffff;
}

.pp-careers-empty p {
max-width:720px;
  margin:0 auto;

  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(18px, 1.18vw, 21px);
  line-height:1.7;
  font-weight:400;
  letter-spacing:-.025em;

  color:rgba(255,255,255,.62);
}

@media (max-width:767px) {
  .pp-careers-empty {
padding:96px 0 88px;
  }

  .pp-careers-empty .container {
width:calc(100% - 30px);
  }

  .pp-careers-empty__eyebrow {
gap:14px;
    margin-bottom:20px;
    font-size:11px;
    letter-spacing:.24em;
  }

  .pp-careers-empty__eyebrow::before,
  .pp-careers-empty__eyebrow::after {
width:36px;
  }

  .pp-careers-empty h2 {
max-width:11ch;
    font-size:clamp(42px, 12vw, 64px);
    line-height:.92;
  }

  .pp-careers-empty p {
font-size:16px;
    line-height:1.62;
  }
}

/* ========================================================= CAREERS — CTA IGUAL AO BOTÃO DO CONTACTO ========================================================= */

.pp-careers-empty a.pp-careers-contact-cta {
all:unset;

  box-sizing:border-box !important;

  position:relative !important;
  isolation:isolate !important;

  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;

  gap:22px !important;

  width:fit-content !important;
  max-width:100% !important;

  min-width:0 !important;
  min-height:62px !important;

  padding:0 18px 0 30px !important;
  margin:32px 0 0 0 !important;

  overflow:hidden !important;

  border:1px solid rgba(255,255,255,.32) !important;
  border-radius:999px !important;

  background:rgba(255,255,255,.055) !important;
  color:#ffffff !important;

  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 16px 46px rgba(0,0,0,.24) !important;

  font-family:
    var(
      --pp-font-heading,
      "URWGeometricSemiBold",
      "Figtree",
      Arial,
      sans-serif
    ) !important;

  font-size:12px !important;
  line-height:1 !important;
  font-weight:500 !important;

  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  text-align:center !important;

  white-space:nowrap !important;

  cursor:pointer !important;

  transition:
    color .38s cubic-bezier(.22,1,.36,1),
    border-color .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1),
    box-shadow .38s cubic-bezier(.22,1,.36,1) !important;
}

.pp-careers-empty a.pp-careers-contact-cta::before {
content:"" !important;

  position:absolute !important;
  inset:0 !important;

  z-index:-1 !important;

  display:block !important;

  width:100% !important;
  height:100% !important;

  border-radius:inherit !important;

  background:#ffffff !important;

  transform:translateY(105%) !important;

  transition:
    transform .46s cubic-bezier(.22,1,.36,1) !important;
}

.pp-careers-empty a.pp-careers-contact-cta::after {
content:none !important;
  display:none !important;
}

.pp-careers-empty a.pp-careers-contact-cta > i {
all:unset;

  box-sizing:border-box !important;

  position:relative !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  flex:0 0 42px !important;

  width:42px !important;
  height:42px !important;

  border-radius:50% !important;

  background:#A58667 !important;
  color:#ffffff !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 10px 26px rgba(165,134,103,.24) !important;

  transition:
    background-color .38s cubic-bezier(.22,1,.36,1),
    transform .38s cubic-bezier(.22,1,.36,1),
    color .38s cubic-bezier(.22,1,.36,1) !important;
}

.pp-careers-empty a.pp-careers-contact-cta > i::before {
content:"" !important;

  position:absolute !important;

  left:50% !important;
  top:50% !important;

  display:block !important;

  width:15px !important;
  height:1px !important;

  background:#ffffff !important;

  transform:translate(-52%, -50%) !important;
}

.pp-careers-empty a.pp-careers-contact-cta > i::after {
content:"" !important;

  position:absolute !important;

  left:50% !important;
  top:50% !important;

  display:block !important;

  width:7px !important;
  height:7px !important;

  border:0 !important;
  border-top:1px solid #ffffff !important;
  border-right:1px solid #ffffff !important;

  background:transparent !important;

  transform:
    translate(-6%, -50%)
    rotate(45deg) !important;
}

/* ========================================================= HOVER — IGUAL AO CONTACTO ========================================================= */

@media (hover:hover) and (pointer:fine) {
  .pp-careers-empty a.pp-careers-contact-cta:hover {
color:#050505 !important;

    border-color:#ffffff !important;

    transform:translateY(-2px) !important;

    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.24),
      0 22px 60px rgba(0,0,0,.32) !important;
  }

  .pp-careers-empty a.pp-careers-contact-cta:hover::before {
transform:translateY(0) !important;
  }

  .pp-careers-empty a.pp-careers-contact-cta:hover > i {
background:#050505 !important;
    color:#ffffff !important;

    transform:translateX(4px) !important;
  }
}

.pp-careers-empty a.pp-careers-contact-cta:focus-visible {
outline:2px solid #ffffff !important;
  outline-offset:4px !important;
}

.pp-careers-empty a.pp-careers-contact-cta:active {
transform:scale(.985) !important;
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-careers-empty a.pp-careers-contact-cta {
min-height:56px !important;

    margin-top:26px !important;

    padding:
      0
      9px
      0
      21px !important;

    gap:16px !important;

    font-size:11px !important;
    letter-spacing:.12em !important;
  }

  .pp-careers-empty a.pp-careers-contact-cta > i {
flex-basis:40px !important;

    width:40px !important;
    height:40px !important;
  }
}

@media (max-width:575px) {
  .pp-careers-empty a.pp-careers-contact-cta {
min-height:54px !important;

    padding:
      0
      8px
      0
      19px !important;

    gap:14px !important;

    font-size:10.5px !important;
    letter-spacing:.115em !important;
  }

  .pp-careers-empty a.pp-careers-contact-cta > i {
flex-basis:38px !important;

    width:38px !important;
    height:38px !important;
  }

  .pp-careers-empty a.pp-careers-contact-cta > i::before {
width:14px !important;
  }
}

/* ========================================================= CAREER POSITION — DETAIL PAGE / PP TÊXTEIS ========================================================= */

.pp-position-detail,
.pp-position-apply {
--pos-black:#050505;
  --pos-white:#ffffff;
  --pos-accent:var(--primary, #A58667);
  --pos-line:rgba(255,255,255,.14);
  --pos-muted:rgba(255,255,255,.62);
  --pos-soft:rgba(255,255,255,.04);

  position:relative;
  width:100%;
  overflow:hidden;
  isolation:isolate;

  background:#050505;
  color:#ffffff;
}

.pp-position-detail *,
.pp-position-detail *::before,
.pp-position-detail *::after,
.pp-position-apply *,
.pp-position-apply *::before,
.pp-position-apply *::after {
box-sizing:border-box;
}

.pp-position-detail__shell,
.pp-position-apply__shell {
width:min(1380px, calc(100% - 72px));
  margin:0 auto;
}

/* ========================================================= HERO ========================================================= */

.pp-position-detail {
padding:clamp(112px, 9vw, 168px) 0 clamp(82px, 7vw, 120px);
}

.pp-position-detail__hero {
max-width:1180px;
  padding-bottom:clamp(70px, 7vw, 112px);
  border-bottom:1px solid var(--pos-line);
}

.pp-position-detail__back {
display:inline-flex;
  align-items:center;
  gap:10px;
  margin-bottom:clamp(42px, 5vw, 72px);

  text-decoration:none;
  color:rgba(255,255,255,.58);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:15px;
  line-height:1;
  font-weight:500;
  letter-spacing:.08em;
  text-transform:uppercase;

  transition:color .3s ease;
}

.pp-position-detail__back:hover {
color:#ffffff;
}

.pp-position-detail__meta {
display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:clamp(26px, 2.6vw, 40px);

  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(16px, 1vw, 18px);
  line-height:1.2;
  font-weight:400;
  letter-spacing:-.02em;

  color:rgba(255,255,255,.58);
}

.pp-position-detail__meta i {
width:6px;
  height:6px;
  display:block;
  border-radius:50%;
  background:var(--pos-accent);
}

.pp-position-detail__hero h1 {
max-width:11ch;
  margin:0 0 clamp(28px, 3vw, 42px);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(64px, 8.6vw, 148px);
  line-height:.88;
  font-weight:500;
  letter-spacing:-.085em;

  color:#ffffff;
}

.pp-position-detail__hero p {
max-width:850px;
  margin:0 0 clamp(36px, 4vw, 58px);

  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(20px, 1.5vw, 28px);
  line-height:1.52;
  font-weight:400;
  letter-spacing:-.04em;

  color:var(--pos-muted);
}

.pp-position-detail__button {
min-width:220px;
  height:72px;
  padding:0 38px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  border-radius:999px;
  border:1px solid #ffffff;
  background:#ffffff;
  color:#050505;

  text-decoration:none;

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(20px, 1.55vw, 28px);
  line-height:1;
  font-weight:500;
  letter-spacing:-.045em;

  transition:
    background .35s cubic-bezier(.22,1,.36,1),
    color .35s cubic-bezier(.22,1,.36,1),
    border-color .35s cubic-bezier(.22,1,.36,1),
    transform .35s cubic-bezier(.22,1,.36,1);
}

.pp-position-detail__button:hover {
background:var(--pos-accent);
  border-color:var(--pos-accent);
  color:#ffffff;
  transform:translateY(-2px);
}

.pp-position-detail__content {
padding-top:clamp(74px, 7vw, 118px);
  display:grid;
  gap:clamp(74px, 7vw, 118px);
}

.pp-position-detail__block {
max-width:1120px;
}

.pp-position-detail__block h2 {
margin:0 0 clamp(22px, 2vw, 32px);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(42px, 4.8vw, 82px);
  line-height:.94;
  font-weight:500;
  letter-spacing:-.07em;

  color:#ffffff;
}

.pp-position-detail__block p,
.pp-position-detail__block li {
max-width:1080px;

  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(20px, 1.6vw, 30px);
  line-height:1.48;
  font-weight:400;
  letter-spacing:-.045em;

  color:rgba(255,255,255,.58);
}

.pp-position-detail__block p {
margin:0 0 18px;
}

.pp-position-detail__block p:last-child {
margin-bottom:0;
}

.pp-position-detail__block ul {
margin:0;
  padding-left:1.1em;
  display:grid;
  gap:clamp(18px, 1.8vw, 28px);
}

.pp-position-detail__block li::marker {
color:var(--pos-accent);
}

.pp-position-apply {
padding:clamp(92px, 8vw, 136px) 0;
}

.pp-position-apply__shell {
display:grid;
  grid-template-columns:minmax(320px, .9fr) minmax(0, 1.1fr);
  gap:clamp(44px, 6vw, 96px);
  align-items:start;

  padding-top:clamp(74px, 7vw, 118px);
  border-top:1px solid var(--pos-line);
}

.pp-position-apply__intro {
max-width:560px;
}

.pp-position-apply__eyebrow {
display:inline-flex;
  align-items:center;
  gap:18px;
  margin-bottom:clamp(22px, 2vw, 28px);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(12px, .82vw, 14px);
  line-height:1;
  font-weight:500;
  letter-spacing:.28em;
  text-transform:uppercase;

  color:var(--pos-accent);
}

.pp-position-apply__eyebrow::before {
content:"";
  width:clamp(44px, 4.4vw, 72px);
  height:1px;
  background:var(--pos-accent);
}

.pp-position-apply__intro h2 {
max-width:11ch;
  margin:0 0 clamp(18px, 2vw, 24px);

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(44px, 5.2vw, 88px);
  line-height:.94;
  font-weight:500;
  letter-spacing:-.075em;

  color:#ffffff;
}

.pp-position-apply__intro p {
max-width:650px;
  margin:0;

  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(18px, 1.18vw, 21px);
  line-height:1.72;
  font-weight:400;
  letter-spacing:-.028em;

  color:var(--pos-muted);
}

.pp-position-apply__form {
padding:clamp(30px, 2.8vw, 42px);
  border:1px solid rgba(255,255,255,.12);
  border-radius:30px;
  background:rgba(255,255,255,.04);
}

.pp-position-apply__grid {
display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:22px;
}

.pp-position-field {
display:flex;
  flex-direction:column;
  gap:10px;
}

.pp-position-field--full {
grid-column:1 / -1;
}

.pp-position-field label,
.pp-position-upload-title {
font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:14px;
  line-height:1.2;
  font-weight:500;
  letter-spacing:.08em;
  text-transform:uppercase;

  color:#ffffff;
}

.pp-position-field input,
.pp-position-field textarea {
width:100%;
  min-height:58px;
  padding:16px 18px;

  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  background:rgba(255,255,255,.04);
  outline:none;

  font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:16px;
  line-height:1.45;
  font-weight:400;
  letter-spacing:-.02em;

  color:#ffffff;

  transition:
    border-color .28s ease,
    box-shadow .28s ease,
    background .28s ease;
}

.pp-position-field input[readonly] {
color:rgba(255,255,255,.72);
}

.pp-position-field textarea {
min-height:180px;
  resize:vertical;
  padding-top:16px;
}

.pp-position-field input::placeholder,
.pp-position-field textarea::placeholder {
color:rgba(255,255,255,.34);
}

.pp-position-field input:focus,
.pp-position-field textarea:focus {
border-color:rgba(165,134,103,.72);
  box-shadow:0 0 0 4px rgba(165,134,103,.12);
  background:rgba(255,255,255,.06);
}

.pp-position-upload {
display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:22px;
}

.pp-position-upload__input {
display:none;
}

.pp-position-upload__button,
.pp-position-apply__submit {
min-width:220px;
  height:72px;
  padding:0 38px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  border:1px solid #ffffff;
  border-radius:999px;
  background:#ffffff;
  color:#050505;

  cursor:pointer;

  font-family:var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size:clamp(20px, 1.55vw, 28px);
  line-height:1;
  font-weight:500;
  letter-spacing:-.045em;
  text-transform:none;

  transition:
    background .35s cubic-bezier(.22,1,.36,1),
    color .35s cubic-bezier(.22,1,.36,1),
    border-color .35s cubic-bezier(.22,1,.36,1),
    transform .35s cubic-bezier(.22,1,.36,1);
}

.pp-position-upload__button:hover,
.pp-position-apply__submit:hover {
background:var(--pos-accent);
  border-color:var(--pos-accent);
  color:#ffffff;
  transform:translateY(-2px);
}

.pp-position-upload__file {
font-family:var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size:clamp(16px, 1vw, 18px);
  line-height:1.4;
  font-weight:400;
  letter-spacing:-.02em;

  color:rgba(255,255,255,.56);
}

.pp-position-apply__actions {
margin-top:30px;
  display:flex;
  align-items:center;
}

@media (max-width:1199px) {
  .pp-position-detail__shell,
  .pp-position-apply__shell {
width:calc(100% - 48px);
  }

  .pp-position-apply__shell {
grid-template-columns:1fr;
    gap:40px;
  }

  .pp-position-apply__intro {
max-width:760px;
  }

  .pp-position-detail__hero h1 {
font-size:clamp(58px, 10vw, 108px);
  }
}

@media (max-width:767px) {
  .pp-position-detail {
padding:84px 0 78px;
  }

  .pp-position-detail__shell,
  .pp-position-apply__shell {
width:calc(100% - 30px);
  }

  .pp-position-detail__hero {
padding-bottom:58px;
  }

  .pp-position-detail__back {
margin-bottom:42px;
    font-size:12px;
  }

  .pp-position-detail__hero h1 {
font-size:clamp(44px, 12vw, 68px);
    line-height:.92;
  }

  .pp-position-detail__hero p {
font-size:17px;
    line-height:1.58;
  }

  .pp-position-detail__button {
width:100%;
    min-width:0;
    height:62px;
    font-size:22px;
  }

  .pp-position-detail__content {
padding-top:58px;
    gap:58px;
  }

  .pp-position-detail__block h2 {
font-size:clamp(34px, 9vw, 48px);
    line-height:.98;
  }

  .pp-position-detail__block p,
  .pp-position-detail__block li {
font-size:17px;
    line-height:1.6;
    letter-spacing:-.025em;
  }

  .pp-position-apply {
padding:78px 0 84px;
  }

  .pp-position-apply__shell {
padding-top:58px;
  }

  .pp-position-apply__eyebrow {
gap:14px;
    margin-bottom:20px;
    font-size:11px;
    letter-spacing:.24em;
  }

  .pp-position-apply__eyebrow::before {
width:36px;
  }

  .pp-position-apply__intro h2 {
font-size:clamp(38px, 10vw, 58px);
    line-height:.96;
  }

  .pp-position-apply__intro p {
font-size:16px;
    line-height:1.65;
  }

  .pp-position-apply__form {
padding:22px 18px;
    border-radius:22px;
  }

  .pp-position-apply__grid {
grid-template-columns:1fr;
    gap:18px;
  }

  .pp-position-field--full {
grid-column:auto;
  }

  .pp-position-field input,
  .pp-position-field textarea {
min-height:54px;
    padding:15px 16px;
    border-radius:16px;
    font-size:15px;
  }

  .pp-position-field textarea {
min-height:160px;
  }

  .pp-position-upload {
align-items:flex-start;
    flex-direction:column;
    gap:14px;
  }

  .pp-position-upload__button,
  .pp-position-apply__submit {
width:100%;
    min-width:0;
    height:62px;
    padding:0 26px;
    font-size:22px;
  }

  .pp-position-upload__file {
font-size:15px;
  }
}

@media (max-width:420px) {
  .pp-position-detail__shell,
  .pp-position-apply__shell {
width:calc(100% - 24px);
  }

  .pp-position-detail__hero h1 {
font-size:40px;
  }

  .pp-position-apply__intro h2 {
font-size:34px;
  }
}

/* ========================================================= HOME — HERO IMAGE SLIDER DESKTOP + MOBILE ========================================================= */

.pp-home-hero-slider {
position:relative;
  isolation:isolate;

  display:block;

  width:100%;

  height:100vh;
  height:100svh;
  height:100dvh;

  min-height:560px;

  margin:0;
  padding:0;

  overflow:hidden;

  background:#050505;
}

.pp-home-hero-slider__media {
position:absolute;
  inset:0;
  z-index:1;

  width:100%;
  height:100%;

  overflow:hidden;

  background:#050505;
}

.pp-home-hero-slider__slide {
position:absolute;
  inset:0;

  width:100%;
  height:100%;
  margin:0;

  opacity:0;
  visibility:hidden;

  overflow:hidden;

  background:#050505;

  transform:scale(1.025);

  transition:
    opacity .68s cubic-bezier(.22,1,.36,1),
    visibility .68s cubic-bezier(.22,1,.36,1),
    transform 2.2s cubic-bezier(.22,1,.36,1);

  will-change:opacity, transform;
  backface-visibility:hidden;
}

.pp-home-hero-slider__slide.is-active {
z-index:2;

  opacity:1;
  visibility:visible;

  transform:scale(1);
}

.pp-home-hero-slider__slide picture {
position:absolute;
  inset:0;

  display:block;

  width:100%;
  height:100%;
}

.pp-home-hero-slider__slide img {
position:absolute;
  inset:0;

  display:block;

  width:100%;
  height:100%;

  max-width:none;

  object-fit:cover;
  object-position:center;

  filter:
    saturate(.98)
    contrast(1.02)
    brightness(.88);

  transform:translateZ(0);

  backface-visibility:hidden;
}

.pp-home-hero-slider__slide:nth-child(1) img {
object-position:center 5%;
}

.pp-home-hero-slider__slide:nth-child(2) img {
object-position:center 8%;
}

.pp-home-hero-slider__slide:nth-child(3) img {
object-position:center 5%;
}

.pp-home-hero-slider__overlay {
position:absolute;
  inset:0;
  z-index:3;

  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      rgba(5,5,5,.26) 0%,
      rgba(5,5,5,.10) 38%,
      rgba(5,5,5,.48) 100%
    ),
    radial-gradient(
      circle at 50% 46%,
      rgba(5,5,5,.01) 0%,
      rgba(5,5,5,.20) 70%,
      rgba(5,5,5,.56) 100%
    );
}

.pp-home-hero-slider__fade {
position:absolute;

  left:0;
  right:0;
  bottom:0;

  z-index:4;

  height:clamp(150px, 28%, 320px);

  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      rgba(5,5,5,0) 0%,
      rgba(5,5,5,.40) 74%,
      #050505 100%
    );
}

.pp-home-hero-slider__content {
position:absolute;
  inset:0;
  z-index:5;

  display:flex;
  align-items:center;
  justify-content:center;

  width:100%;
  height:100%;

  padding:
    clamp(24px, 4vw, 60px)
    clamp(18px, 4vw, 64px);

  pointer-events:none;
}

.pp-home-hero-slider__content .container {
position:relative;

  width:100%;
  max-width:1600px;
  height:100%;

  margin:0 auto;

  padding-inline:clamp(16px, 3vw, 40px);
}

.pp-home-hero-slider__content .row,
.pp-home-hero-slider__content .col-12 {
width:100%;
  height:100%;
}

/* ========================================================= CENTRO DO HERO ========================================================= */

.pp-home-hero-slider .pp-hero-center {
display:flex;
  flex-direction:column;

  align-items:center;
  justify-content:center;

  width:100%;
  height:100%;
  min-height:100%;

  margin:0;
  padding:0;

  text-align:center;
}

.pp-home-hero-slider .pp-hero-logo-wrap {
display:flex;

  align-items:center;
  justify-content:center;

  width:100%;

  margin:0;
  padding:0;
}

.pp-home-hero-slider .pp-hero-logo {
display:block;

  width:clamp(300px, 24vw, 460px);
  max-width:460px;
  height:auto;

  object-fit:contain;

  transform:none;
}

@media (min-width:1800px) {
  .pp-home-hero-slider {
min-height:720px;
  }

  .pp-home-hero-slider__content .container {
max-width:1760px;
  }

  .pp-home-hero-slider .pp-hero-logo {
width:clamp(380px, 24vw, 500px);
    max-width:500px;
  }
}

@media (min-width:992px) and (max-height:800px) {
  .pp-home-hero-slider {
min-height:500px;
  }

  .pp-home-hero-slider .pp-hero-logo {
width:clamp(260px, 22vw, 360px);
    max-width:360px;
  }
}

@media (max-width:1199px) {
  .pp-home-hero-slider {
height:100vh;
    height:100svh;
    height:100dvh;

    min-height:540px;
  }

  .pp-home-hero-slider__content {
padding-inline:clamp(20px, 5vw, 52px);
  }

  .pp-home-hero-slider .pp-hero-logo {
width:clamp(220px, 28vw, 300px);
    max-width:300px;
  }
}

@media (min-width:768px) and (max-width:991px) {
  .pp-home-hero-slider {
min-height:560px;
  }

  .pp-home-hero-slider__slide:nth-child(1) img {
object-position:38% center;
  }

  .pp-home-hero-slider__slide:nth-child(2) img {
object-position:50% center;
  }

  .pp-home-hero-slider__slide:nth-child(3) img {
object-position:36% center;
  }

  .pp-home-hero-slider .pp-hero-logo {
width:clamp(210px, 30vw, 280px);
    max-width:280px;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width:767px) {
  .pp-home-hero-slider {
width:100%;

    height:100vh;
    height:100svh;
    height:100dvh;

    min-height:520px;

    margin:0;
  }

  .pp-home-hero-slider__slide {
transform:scale(1.012);

    transition:
      opacity .56s cubic-bezier(.22,1,.36,1),
      visibility .56s cubic-bezier(.22,1,.36,1),
      transform 1.6s cubic-bezier(.22,1,.36,1);
  }

  .pp-home-hero-slider__slide.is-active {
transform:scale(1);
  }

  /* IMAGENS MOBILE */

  .pp-home-hero-slider__slide img {
width:100%;
    height:100%;

    object-fit:cover;
    object-position:center center;

    filter:
      saturate(.96)
      contrast(1.02)
      brightness(.84);
  }

  /* OVERLAY MOBILE */

  .pp-home-hero-slider__overlay {
background:
      linear-gradient(
        180deg,
        rgba(5,5,5,.28) 0%,
        rgba(5,5,5,.08) 38%,
        rgba(5,5,5,.50) 100%
      ),
      radial-gradient(
        circle at center,
        rgba(5,5,5,0) 0%,
        rgba(5,5,5,.16) 68%,
        rgba(5,5,5,.42) 100%
      );
  }

  /* FADE MOBILE */

  .pp-home-hero-slider__fade {
height:29%;

    background:
      linear-gradient(
        180deg,
        rgba(5,5,5,0) 0%,
        rgba(5,5,5,.42) 76%,
        #050505 100%
      );
  }

  /* CONTEÚDO MOBILE */

  .pp-home-hero-slider__content {
padding:
      max(20px, env(safe-area-inset-top))
      18px
      max(24px, env(safe-area-inset-bottom));
  }

  .pp-home-hero-slider__content .container {
padding-inline:0;
  }

  /* LOGO MOBILE */

  .pp-home-hero-slider .pp-hero-logo {
width:clamp(160px, 46vw, 210px);
    max-width:210px;
    height:auto;

    transform:none;
  }
}

/* ========================================================= MOBILE PEQUENO ========================================================= */

@media (max-width:479px) {
  .pp-home-hero-slider {
height:100vh;
    height:100svh;
    height:100dvh;

    min-height:500px;
  }

  .pp-home-hero-slider .pp-hero-logo {
width:clamp(155px, 45vw, 190px);
    max-width:190px;
  }
}

/* ========================================================= MOBILE MUITO PEQUENO ========================================================= */

@media (max-width:360px) {
  .pp-home-hero-slider {
min-height:480px;
  }

  .pp-home-hero-slider .pp-hero-logo {
width:clamp(145px, 46vw, 175px);
    max-width:175px;
  }
}

/* ========================================================= MOBILE HORIZONTAL ========================================================= */

@media (max-width:991px) and (orientation:landscape) {
  .pp-home-hero-slider {
height:100vh;
    height:100svh;
    height:100dvh;

    min-height:340px;
  }

  .pp-home-hero-slider__content {
padding-block:16px;
  }

  .pp-home-hero-slider__slide img {
object-position:center center;
  }

  .pp-home-hero-slider .pp-hero-logo {
width:clamp(145px, 20vw, 185px);
    max-width:185px;
  }

  .pp-home-hero-slider__fade {
height:34%;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-home-hero-slider__slide {
transform:none;

    transition:
      opacity .2s linear,
      visibility .2s linear;
  }

  .pp-home-hero-slider__slide.is-active {
transform:none;
  }
}

/* ========================================================= PP TÊXTEIS — FOOTER FINAL LIMPO Sem overrides / Logos institucionais no fim ========================================================= */

.pp-footer-clean {
position: relative;
  width: 100%;
  overflow: hidden;
  isolation: isolate;
  background: #000000;
  color: #ffffff;
  padding: clamp(86px, 7.5vw, 126px) 0 clamp(30px, 3vw, 46px);
  border-top: 1px solid rgba(255,255,255,.10);
  font-family: var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
}

.pp-footer-clean,
.pp-footer-clean * {
box-sizing: border-box;
}

.pp-footer-clean__shell {
position: relative;
  z-index: 3;
  width: min(100% - 48px, 1500px);
  margin: 0 auto;
}

.pp-footer-clean__bg-word {
position: absolute;
  left: 50%;
  bottom: clamp(265px, 18vw, 340px);
  transform: translateX(-50%);
  z-index: 0;
  pointer-events: none;
  white-space: nowrap;
  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: clamp(112px, 19vw, 300px);
  line-height: .78;
  letter-spacing: -.075em;
  color: rgba(255,255,255,.032);
  text-transform: uppercase;
}

.pp-footer-clean::before {
content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.014) 1px, transparent 1px);
  background-size: 92px 92px;
  opacity: .10;
  mask-image: linear-gradient(to bottom, transparent 0%, #000 24%, #000 78%, transparent 100%);
}

/* ========================================================= TOPO DO FOOTER ========================================================= */

.pp-footer-clean__top {
position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: minmax(260px, 1.15fr) .8fr .75fr 1.08fr .65fr;
  gap: clamp(42px, 5.5vw, 88px);
  align-items: start;
  padding-bottom: clamp(68px, 6vw, 96px);
}

.pp-footer-clean__brand {
max-width: 340px;
}

.pp-footer-clean__logo {
display: inline-flex;
  width: clamp(142px, 13vw, 210px);
  margin-bottom: clamp(30px, 3vw, 46px);
}

.pp-footer-clean__logo img {
width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}

.pp-footer-clean__brand::after,
.pp-footer-clean__col h3::after,
.pp-footer-clean__contact h3::after {
content: "";
  display: block;
  width: 44px;
  height: 2px;
  margin-top: 18px;
  background: var(--primary, #A58667);
}

.pp-footer-clean__brand p {
margin-top: clamp(28px, 3vw, 42px);
  max-width: 310px;
  color: rgba(255,255,255,.68);
  font-size: clamp(16px, 1.15vw, 19px);
  line-height: 1.55;
  letter-spacing: -.015em;
}

.pp-footer-clean__col h3,
.pp-footer-clean__contact h3 {
color: var(--primary, #A58667);
  font-family: var(--pp-font-heading, "URWGeometricSemiBold", "Figtree", Arial, sans-serif);
  font-size: clamp(13px, .95vw, 16px);
  line-height: 1;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.pp-footer-clean__col ul {
display: grid;
  gap: 18px;
  margin-top: clamp(34px, 3vw, 48px);
}

.pp-footer-clean__col a {
position: relative;
  display: inline-flex;
  align-items: center;
  width: fit-content;
  color: rgba(255,255,255,.88);
  font-family: var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size: clamp(17px, 1.25vw, 22px);
  line-height: 1.15;
  letter-spacing: -.025em;
  text-decoration: none;
  transition: color .25s ease, transform .25s ease;
}

.pp-footer-clean__col a::before {
content: "";
  position: absolute;
  left: 0;
  bottom: -8px;
  width: 0;
  height: 1px;
  background: var(--primary, #A58667);
  transition: width .3s cubic-bezier(.22,1,.36,1);
}

.pp-footer-clean__col a:hover {
color: #fff;
  transform: translateX(5px);
}

.pp-footer-clean__col a:hover::before {
width: 100%;
}

/* CONTACTO */

.pp-footer-clean__contact-list {
display: grid;
  gap: 24px;
  margin-top: clamp(34px, 3vw, 48px);
}

.pp-footer-clean__contact-item {
display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  color: rgba(255,255,255,.86);
  text-decoration: none;
}

.pp-footer-clean__contact-item span {
width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--primary, #A58667);
}

.pp-footer-clean__contact-item svg {
width: 23px;
  height: 23px;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.pp-footer-clean__contact-item strong {
display: block;
  color: rgba(255,255,255,.78);
  font-size: clamp(15px, 1.05vw, 18px);
  line-height: 1.55;
  letter-spacing: -.015em;
  font-weight: 400;
}

a.pp-footer-clean__contact-item strong {
transition: color .25s ease;
}

a.pp-footer-clean__contact-item:hover strong {
color: #fff;
}

.pp-footer-clean__legal-bottom {
position: relative;
  z-index: 4;
  border-top: 1px solid rgba(255,255,255,.10);
  padding: clamp(28px, 3vw, 42px) 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap;
}

.pp-footer-clean__legal-links {
display: flex;
  align-items: center;
  gap: clamp(14px, 1.8vw, 28px);
  flex-wrap: wrap;
}

.pp-footer-clean__legal-links a {
color: rgba(255,255,255,.78);
  font-family: var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size: clamp(14px, .95vw, 17px);
  line-height: 1.2;
  letter-spacing: -.015em;
  text-decoration: none;
  transition: color .25s ease;
}

.pp-footer-clean__legal-links a:hover {
color: #fff;
}

.pp-footer-clean__legal-links span {
width: 1px;
  height: 18px;
  background: rgba(165,134,103,.72);
}

.pp-footer-clean__legal-bottom p {
margin: 0;
  color: rgba(255,255,255,.68);
  font-family: var(--pp-font-body, "URWGeometricMedium", "Figtree", Arial, sans-serif);
  font-size: clamp(14px, .95vw, 17px);
  line-height: 1.2;
  letter-spacing: -.015em;
  white-space: nowrap;
}

/* ========================================================= LOGOS INSTITUCIONAIS Última linha do footer ========================================================= */

.pp-footer-clean__logos {
position: relative;
  z-index: 4;
  border-top: 1px solid rgba(255,255,255,.10);
  border-bottom: 0 !important;
  padding: clamp(34px, 3.4vw, 54px) 0 0;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(42px, 5vw, 86px);
  flex-wrap: wrap;
}

.pp-footer-clean__logo-link {
display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  text-decoration: none;

  transition:
    opacity .25s ease,
    transform .25s cubic-bezier(.22,1,.36,1);
}

.pp-footer-clean__logo-link:hover {
opacity: 1;
  transform: translateY(-3px);
}

.pp-footer-clean__logo-link img {
display: block;
  width: 100%;
  max-width: none !important;
  max-height: none !important;
  height: auto;
  object-fit: contain;

  /* mantém as cores originais dos logos */
  filter: none !important;
  opacity: 1;
}

.pp-footer-clean__logo-link--prr {
width: clamp(390px, 31vw, 600px);
}

.pp-footer-clean__logo-link--norte {
width: clamp(340px, 27vw, 520px);
}

.pp-footer-clean__logos > img {
max-width: none !important;
  max-height: none !important;
  width: clamp(340px, 27vw, 520px);
  height: auto;
  object-fit: contain;

  /* mantém as cores originais */
  filter: none !important;
  opacity: 1;
}

@media (max-width: 991px) {
  .pp-footer-clean__logos {
gap: 38px;
  }

  .pp-footer-clean__logo-link--prr {
width: min(560px, 88vw);
  }

  .pp-footer-clean__logo-link--norte {
width: min(480px, 82vw);
  }
}

/* mobile */

@media (max-width: 767px) {
  .pp-footer-clean__logos {
flex-direction: column;
    gap: 32px;
    padding-top: 34px;
  }

  .pp-footer-clean__logo-link--prr {
width: min(520px, 94vw);
  }

  .pp-footer-clean__logo-link--norte {
width: min(440px, 88vw);
  }
}

@media (max-width: 1180px) {
  .pp-footer-clean__top {
grid-template-columns: 1.2fr 1fr 1fr;
    gap: 54px 44px;
  }

  .pp-footer-clean__brand {
grid-column: 1 / -1;
    max-width: 560px;
  }

  .pp-footer-clean__brand p {
max-width: 520px;
  }

  .pp-footer-clean__logo-link--prr {
width: clamp(360px, 42vw, 560px);
  }

  .pp-footer-clean__logo-link--norte {
width: clamp(320px, 36vw, 500px);
  }
}

@media (max-width: 820px) {
  .pp-footer-clean {
padding-top: 72px;
  }

  .pp-footer-clean__shell {
width: min(100% - 34px, 1500px);
  }

  .pp-footer-clean__top {
grid-template-columns: 1fr 1fr;
    gap: 46px 28px;
    padding-bottom: 58px;
  }

  .pp-footer-clean__brand,
  .pp-footer-clean__contact {
grid-column: 1 / -1;
  }

  .pp-footer-clean__bg-word {
bottom: 335px;
    font-size: clamp(82px, 28vw, 190px);
  }

  .pp-footer-clean__legal-bottom {
align-items: flex-start;
    flex-direction: column;
  }

  .pp-footer-clean__legal-bottom p {
white-space: normal;
  }

  .pp-footer-clean__logos {
justify-content: flex-start;
    gap: 30px;
    padding-top: 34px;
  }

  .pp-footer-clean__logo-link--prr {
width: min(100%, 430px);
  }

  .pp-footer-clean__logo-link--norte {
width: min(100%, 370px);
  }
}

@media (max-width: 560px) {
  .pp-footer-clean__top {
grid-template-columns: 1fr;
  }

  .pp-footer-clean__logo {
width: 154px;
  }

  .pp-footer-clean__brand p {
font-size: 16px;
  }

  .pp-footer-clean__col ul {
gap: 15px;
  }

  .pp-footer-clean__col a {
font-size: 19px;
  }

  .pp-footer-clean__legal-links {
display: grid;
    gap: 14px;
  }

  .pp-footer-clean__legal-links span {
display: none;
  }

  .pp-footer-clean__logos {
justify-content: center;
    gap: 26px;
    padding-top: 30px;
  }

  .pp-footer-clean__logo-link--prr {
width: min(100%, 330px);
  }

  .pp-footer-clean__logo-link--norte {
width: min(100%, 290px);
  }

  .pp-footer-clean__bg-word {
bottom: 360px;
  }
}

/* ========================================================= NAVBAR — DESKTOP COMPACTO PARA ZOOM ========================================================= */

@media (max-width:1500px) and (min-width:1181px) {
  .navbar .container {
width:100%;
    max-width:100%;
    padding-left:24px;
    padding-right:24px;
  }

  .navbar-wrapper {
min-height:96px;
  }

  .navbar-logo--default,
  .navbar-logo--dropdown {
width:56px;
  }

  .nav-menu-flex {
gap:30px;
  }

  .div-block-11 {
gap:18px;
  }

  .nav-menu2 {
gap:22px;
  }

  .nav-menu2 .nav-link,
  .nav-item-mega > .nav-link {
font-size:14.5px;
    letter-spacing:.105em;
  }

  .pp-lang-toggle {
width:86px;
    height:38px;
    margin-left:12px;
  }

  .pp-lang-toggle__option {
font-size:12px;
  }
}

@media (max-width:1320px) and (min-width:1181px) {
  .navbar .container {
padding-left:18px;
    padding-right:18px;
  }

  .navbar-logo--default,
  .navbar-logo--dropdown {
width:52px;
  }

  .nav-menu-flex {
gap:24px;
  }

  .div-block-11 {
gap:14px;
  }

  .nav-menu2 {
gap:16px;
  }

  .nav-menu2 .nav-link,
  .nav-item-mega > .nav-link {
font-size:13.2px;
    letter-spacing:.09em;
  }

  .pp-lang-toggle {
width:80px;
    height:36px;
    margin-left:10px;
  }
}

/* navbar usa a largura toda */

.navbar .container {
width:100% !important;
  max-width:none !important;
  padding-left:clamp(22px, 2.2vw, 58px) !important;
  padding-right:clamp(22px, 2.2vw, 58px) !important;
}

.navbar-wrapper {
position:relative !important;
  min-height:110px !important;
}

.navbar.nav-scrolled-up .navbar-wrapper {
min-height:88px !important;
}

.nav-menu-wrapper {
width:100% !important;
}

.nav-menu-flex {
width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:clamp(42px, 3.2vw, 64px) !important;
  min-width:0 !important;
}

.div-block-10 {
flex:0 0 auto !important;
}

.navbar-logo--default,
.navbar-logo--dropdown {
width:60px !important;
  max-width:60px !important;
}

.div-block-11 {
flex:1 1 auto !important;
  width:auto !important;
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:0 !important;

  /* reserva espaço à direita para o toggle não sobrepor os links */
  padding-right:150px !important;
}

.nav-menu2 {
flex:0 1 auto !important;
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:clamp(30px, 2.2vw, 44px) !important;
  margin:0 !important;
  padding:0 !important;
  white-space:nowrap !important;
}

.nav-menu2 > li,
.nav-item-mega {
flex:0 0 auto !important;
}

.nav-menu2 .nav-link,
.nav-item-mega > .nav-link {
font-family:"Figtree", sans-serif !important;
  font-size:17px !important;
  line-height:1 !important;
  letter-spacing:.105em !important;
  white-space:nowrap !important;
  padding:0 0 8px 0 !important;
  height:auto !important;
  min-height:22px !important;
}

/* toggle fixo no canto direito da navbar */

.pp-lang-toggle {
position:absolute !important;
  right:clamp(22px, 2.2vw, 58px) !important;
  top:50% !important;
  transform:translateY(-50%) !important;

  width:96px !important;
  height:40px !important;
  margin-left:0 !important;
  margin-right:0 !important;
  flex:0 0 auto !important;
  z-index:80 !important;
}

.pp-lang-toggle__option {
font-size:14px !important;
  line-height:1 !important;
}

@media (max-width:1500px) and (min-width:1281px) {
  .navbar .container {
padding-left:24px !important;
    padding-right:24px !important;
  }

  .navbar-wrapper {
min-height:110px !important;
  }

  .navbar-logo--default,
  .navbar-logo--dropdown {
width:60px !important;
    max-width:60px !important;
  }

  .nav-menu-flex {
gap:46px !important;
  }

  .div-block-11 {
padding-right:132px !important;
  }

  .nav-menu2 {
gap:34px !important;
  }

  .nav-menu2 .nav-link,
  .nav-item-mega > .nav-link {
font-size:18px !important;
    letter-spacing:.115em !important;
  }

  .pp-lang-toggle {
width:96px !important;
    height:40px !important;
    right:24px !important;
  }

  .pp-lang-toggle__option {
font-size:14px !important;
  }
}

@media (max-width:1280px) and (min-width:1101px) {
  .navbar .container {
padding-left:20px !important;
    padding-right:20px !important;
  }

  .navbar-wrapper {
min-height:104px !important;
  }

  .navbar-logo--default,
  .navbar-logo--dropdown {
width:56px !important;
    max-width:56px !important;
  }

  .nav-menu-flex {
gap:34px !important;
  }

  .div-block-11 {
padding-right:118px !important;
  }

  .nav-menu2 {
gap:24px !important;
  }

  .nav-menu2 .nav-link,
  .nav-item-mega > .nav-link {
font-size:16px !important;
    letter-spacing:.09em !important;
  }

  .pp-lang-toggle {
width:88px !important;
    height:38px !important;
    right:20px !important;
  }

  .pp-lang-toggle__option {
font-size:12.5px !important;
  }
}

@media (max-width:1100px) and (min-width:981px) {
  .navbar .container {
padding-left:14px !important;
    padding-right:14px !important;
  }

  .navbar-wrapper {
min-height:96px !important;
  }

  .navbar-logo--default,
  .navbar-logo--dropdown {
width:50px !important;
    max-width:50px !important;
  }

  .nav-menu-flex {
gap:18px !important;
  }

  .div-block-11 {
padding-right:96px !important;
  }

  .nav-menu2 {
gap:13px !important;
  }

  .nav-menu2 .nav-link,
  .nav-item-mega > .nav-link {
font-size:12.4px !important;
    letter-spacing:.045em !important;
  }

  .pp-lang-toggle {
width:76px !important;
    height:34px !important;
    right:14px !important;
  }

  .pp-lang-toggle__option {
font-size:10.5px !important;
  }
}

/* ========================================================= IMPEDIR MOBILE CEDO DEMAIS Desktop continua até 981px ========================================================= */

@media (min-width:981px) {
  .navbar {
display:block !important;
  }

  .navbar-inner {
display:block !important;
  }

  .pp-mobile-nav {
display:none !important;
  }

  .pp-lang-toggle {
display:inline-grid !important;
  }

  .pp-mega-menu,
  .pp-mega-menu-mask {
display:block;
  }
}

/* Mobile só entra mesmo abaixo de 981px */

@media (max-width:980px) {
  .navbar {
display:none !important;
  }

  .navbar-inner {
display:none !important;
  }

  .pp-mobile-nav {
display:block !important;
  }

  .pp-mega-menu,
  .pp-mega-menu-mask {
display:none !important;
  }
}

.pp-lab-performance-story__sgq {
width:min(260px, 100%);
  margin:clamp(42px, 4.2vw, 70px) 0 0;
  padding:clamp(18px, 1.6vw, 26px);

  display:flex;
  align-items:center;
  justify-content:flex-start;

  background:#ffffff;
  border:1px solid rgba(5,5,5,.10);
  box-shadow:0 24px 70px rgba(5,5,5,.06);
}

.pp-lab-performance-story__sgq img {
width:100%;
  max-width:210px;
  height:auto;
  display:block;
  object-fit:contain;
}

@media (max-width:1199px) {
  .pp-lab-performance-story__sgq {
width:min(240px, 100%);
    margin-top:34px;
  }
}

@media (max-width:767px) {
  .pp-lab-performance-story__sgq {
width:min(210px, 100%);
    margin-top:28px;
    padding:16px;
  }

  .pp-lab-performance-story__sgq img {
max-width:170px;
  }
}

/* ========================================================= PRIVACY POLICY — EDITORIAL / PP TÊXTEIS ========================================================= */

body.pp-privacy-page .pp-privacy-policy {
position:relative;
  padding:110px 0 140px;
  overflow:hidden;
  background:#000000;
  color:#ffffff;
}

body.pp-privacy-page .pp-privacy-policy__shell {
width:min(1800px, calc(100% - 80px));
  margin:0 auto;
  display:block;
}

body.pp-privacy-page .pp-privacy-policy__content {
width:100%;
  display:block;
  counter-reset:privacy-section;
}

body.pp-privacy-page .pp-privacy-policy__block {
counter-increment:privacy-section;

  display:grid;
  grid-template-columns:max-content minmax(0, 1fr);
  column-gap:12px;
  row-gap:18px;

  width:100%;
  padding:0 0 66px;
  margin:0;
  border:0;
}

body.pp-privacy-page .pp-privacy-policy__block:last-child {
padding-bottom:0;
}

body.pp-privacy-page .pp-privacy-policy__block > div {
display:contents;
}

body.pp-privacy-page .pp-privacy-policy__number {
grid-column:1;
  grid-row:1;
  align-self:baseline;

  display:block;
  margin:0;
  padding:0;

  font-size:0;
  line-height:1;
  color:#ffffff;
}

body.pp-privacy-page .pp-privacy-policy__number::before {
content:counter(privacy-section, upper-roman) " –";

  font-family:var(
    --pp-font-heading,
    "URWGeometricSemiBold",
    "URWGeometricMedium",
    "Figtree",
    Arial,
    sans-serif
  );

  font-size:clamp(28px, 2.15vw, 40px);
  line-height:1.12;
  font-weight:500;
  letter-spacing:-.025em;
  color:#ffffff;
}

body.pp-privacy-page .pp-privacy-policy__block h3 {
grid-column:2;
  grid-row:1;
  align-self:baseline;

  margin:0;

  font-family:var(
    --pp-font-heading,
    "URWGeometricSemiBold",
    "URWGeometricMedium",
    "Figtree",
    Arial,
    sans-serif
  );

  font-size:clamp(28px, 2.15vw, 40px);
  line-height:1.12;
  font-weight:500;
  letter-spacing:-.025em;
  color:#ffffff;
}

body.pp-privacy-page .pp-privacy-policy__block p,
body.pp-privacy-page .pp-privacy-policy__block li {
grid-column:1 / -1;

  width:100%;
  margin:0;

  font-family:var(
    --pp-font-body,
    "URWGeometricMedium",
    "Figtree",
    Arial,
    sans-serif
  );

  font-size:clamp(17px, 1.08vw, 21px);
  line-height:1.55;
  font-weight:400;
  letter-spacing:.015em;
  color:rgba(255,255,255,.9);
}

body.pp-privacy-page .pp-privacy-policy__block p + p {
margin-top:-7px;
}

body.pp-privacy-page .pp-privacy-policy__block strong {
font-family:var(
    --pp-font-heading,
    "URWGeometricSemiBold",
    "URWGeometricMedium",
    "Figtree",
    Arial,
    sans-serif
  );

  font-weight:500;
  color:#ffffff;
}

body.pp-privacy-page .pp-privacy-policy__block a {
font-family:inherit;
  color:#ffffff;
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.3);
}

body.pp-privacy-page .pp-privacy-policy__block a:hover {
border-bottom-color:#ffffff;
}

@media (max-width:991px) {
  body.pp-privacy-page .pp-privacy-policy {
padding:90px 0 110px;
  }

  body.pp-privacy-page .pp-privacy-policy__shell {
width:calc(100% - 48px);
  }

  body.pp-privacy-page .pp-privacy-policy__block {
padding-bottom:54px;
  }
}

@media (max-width:767px) {
  body.pp-privacy-page .pp-privacy-policy {
padding:72px 0 90px;
  }

  body.pp-privacy-page .pp-privacy-policy__shell {
width:calc(100% - 32px);
  }

  body.pp-privacy-page .pp-privacy-policy__block {
grid-template-columns:max-content minmax(0, 1fr);
    column-gap:8px;
    row-gap:16px;
    padding-bottom:46px;
  }

  body.pp-privacy-page .pp-privacy-policy__number::before,
  body.pp-privacy-page .pp-privacy-policy__block h3 {
font-size:clamp(23px, 7vw, 30px);
    line-height:1.15;
  }

  body.pp-privacy-page .pp-privacy-policy__block p,
  body.pp-privacy-page .pp-privacy-policy__block li {
font-size:17px;
    line-height:1.58;
    letter-spacing:0;
  }
}

/* ========================================================= PP TÊXTEIS SUSTENTABILIDADE — AUTOPLAY VIDEO estilo cinematic / Nike Exclusivo desta página ========================================================= */

/* ========================================================= MOBILE até 767px ========================================================= */

/* ========================================================= MOBILE PEQUENO até 420px ========================================================= */

/* ========================================================= MOBILE MUITO PEQUENO até 340px ========================================================= */

/* ========================================================= MOBILE HORIZONTAL ========================================================= */

/* ========================================================= ABOUT — CAMPUS PP TÊXTEIS DESKTOP PREMIUM / CONSTANT DRAW SPEED ========================================================= */

.pp-campus-map {
--pp-campus-red:#ff1b12;

  position:relative;
  width:100%;

  padding:
    clamp(72px, 7vw, 112px)
    0
    clamp(78px, 7vw, 118px);

  background:#ffffff;
  color:#050505;

  overflow:hidden;
}

.pp-campus-map__shell {
width:min(
    1480px,
    calc(100% - clamp(28px, 4vw, 64px))
  );

  margin:0 auto;
}

.pp-campus-map__head {
width:100%;
  max-width:880px;

  margin:
    0
    auto
    clamp(34px, 3.4vw, 52px);
}

.pp-campus-map__head > span {
display:flex;
  align-items:center;

  gap:14px;

  margin-bottom:18px;

  font-family:var(--pp-font-heading);
  font-size:12px;
  line-height:1;

  letter-spacing:.18em;

  text-transform:uppercase;

  color:#A58667;
}

.pp-campus-map__head > span::before {
content:"";

  display:block;

  width:44px;
  height:1px;

  flex:0 0 auto;

  background:#A58667;
}

.pp-campus-map__head h2 {
margin:0;

  font-family:var(--pp-font-heading);

  font-size:clamp(42px, 5vw, 74px);
  line-height:.96;

  letter-spacing:-.055em;

  color:#050505;
}

.pp-campus-map__head p {
max-width:680px;

  margin-top:18px;

  font-family:var(--pp-font-body);

  font-size:clamp(16px, 1.05vw, 19px);
  line-height:1.55;

  letter-spacing:-.015em;

  color:rgba(5,5,5,.58);
}

.pp-campus-map__visual {
position:relative;

  width:100%;
  max-width:1380px;

  margin:0 auto;

  aspect-ratio:2048 / 1738;

  overflow:hidden;
  isolation:isolate;

  background:#e9e5df;
}

.pp-campus-map__picture {
position:absolute;
  inset:0;

  z-index:1;

  display:block;

  width:100%;
  height:100%;
}

.pp-campus-map__image {
display:block;

  width:100%;
  height:100%;

  object-fit:contain;
  object-position:center;

  transform:none !important;
}

.pp-campus-map__svg {
position:absolute;
  inset:0;

  z-index:5;

  display:block;

  width:100%;
  height:100%;

  overflow:visible;

  pointer-events:none;
}

.pp-campus-map__svg--desktop {
display:block;
}

.pp-campus-map__svg--mobile {
display:none;
}

.pp-campus-map__trace {
fill:none;

  stroke:var(--pp-campus-red);

  /*
    Forte o suficiente para se destacar,
    mas sem parecer uma linha grosseira.
  */
  stroke-width:7px;

  stroke-linecap:round;
  stroke-linejoin:round;

  vector-effect:non-scaling-stroke;
  shape-rendering:geometricPrecision;

  /*
    O HTML usa pathLength="100".
  */
  stroke-dasharray:100 100;
  stroke-dashoffset:100;

  opacity:0;

  /*
    ACABAMENTO PREMIUM

    1.º shadow:
    pequeno contraste escuro

    2.º:
    separação branca da fotografia

    3.º/4.º:
    glow vermelho muito controlado
  */
  filter:
    drop-shadow(0 1px 1px rgba(0,0,0,.30))
    drop-shadow(0 0 1.3px rgba(255,255,255,.95))
    drop-shadow(0 0 3px rgba(255,27,18,.90))
    drop-shadow(0 0 8px rgba(255,27,18,.42));

  /*
    Retira qualquer transition global aplicada
    aos SVG paths pelo template.
  */
  transition:none !important;

  animation:none !important;
transition:none !important;

  will-change:
    stroke-dashoffset,
    stroke-dasharray,
    opacity;
}

.pp-campus-map__trace--one {
animation-name:ppCampusPremiumOne;
}

@keyframes ppCampusPremiumOne {
/* começa imediatamente */
  0%{
    stroke-dasharray:100 100;
    stroke-dashoffset:100;
    opacity:1;
  }


  /*
    DESENHO:
    0% -> 41.8%

    ≈ 8.36 segundos
  */
  41.8%{
    stroke-dasharray:100 100;
    stroke-dashoffset:0;
    opacity:1;
  }


  /*
    fecha completamente o último pixel
    do contorno
  */
  41.81%{
    stroke-dasharray:100 0;
    stroke-dashoffset:0;
    opacity:1;
  }


  /*
    permanece visível enquanto os
    outros edifícios são desenhados
  */
  94%{
    stroke-dasharray:100 0;
    stroke-dashoffset:0;
    opacity:1;
  }


  /* fade conjunto */
  97.5%{
    stroke-dasharray:100 0;
    stroke-dashoffset:0;
    opacity:0;
  }


  99.9%{
    stroke-dasharray:100 0;
    stroke-dashoffset:0;
    opacity:0;
  }


  /* reset */
  100%{
    stroke-dasharray:100 100;
    stroke-dashoffset:100;
    opacity:0;
  }
}

.pp-campus-map__trace--two {
animation-name:ppCampusPremiumTwo;
}

@keyframes ppCampusPremiumTwo {
/*
    espera que o edifício grande termine
    + pequena pausa
  */
  0%,
  43.8%{
    stroke-dasharray:100 100;
    stroke-dashoffset:100;
    opacity:0;
  }


  43.81%{
    stroke-dasharray:100 100;
    stroke-dashoffset:100;
    opacity:1;
  }


  /*
    DESENHO:
    43.8% -> 59%

    ≈ 3.04 segundos
  */
  59%{
    stroke-dasharray:100 100;
    stroke-dashoffset:0;
    opacity:1;
  }


  /* fecha o contorno */
  59.01%{
    stroke-dasharray:100 0;
    stroke-dashoffset:0;
    opacity:1;
  }


  94%{
    stroke-dasharray:100 0;
    stroke-dashoffset:0;
    opacity:1;
  }


  97.5%{
    stroke-dasharray:100 0;
    stroke-dashoffset:0;
    opacity:0;
  }


  99.9%{
    stroke-dasharray:100 0;
    stroke-dashoffset:0;
    opacity:0;
  }


  100%{
    stroke-dasharray:100 100;
    stroke-dashoffset:100;
    opacity:0;
  }
}

.pp-campus-map__trace--three {
animation-name:ppCampusPremiumThree;
}

@keyframes ppCampusPremiumThree {
/*
    espera pelo edifício central
    + pequena pausa
  */
  0%,
  61%{
    stroke-dasharray:100 100;
    stroke-dashoffset:100;
    opacity:0;
  }


  61.01%{
    stroke-dasharray:100 100;
    stroke-dashoffset:100;
    opacity:1;
  }


  /*
    DESENHO:
    61% -> 84.35%

    ≈ 4.67 segundos
  */
  84.35%{
    stroke-dasharray:100 100;
    stroke-dashoffset:0;
    opacity:1;
  }


  /* fecha completamente */
  84.36%{
    stroke-dasharray:100 0;
    stroke-dashoffset:0;
    opacity:1;
  }


  /*
    TODOS OS 3 FICAM AGORA
    TOTALMENTE VISÍVEIS
  */
  94%{
    stroke-dasharray:100 0;
    stroke-dashoffset:0;
    opacity:1;
  }


  /* desaparecem todos juntos */
  97.5%{
    stroke-dasharray:100 0;
    stroke-dashoffset:0;
    opacity:0;
  }


  99.9%{
    stroke-dasharray:100 0;
    stroke-dashoffset:0;
    opacity:0;
  }


  100%{
    stroke-dasharray:100 100;
    stroke-dashoffset:100;
    opacity:0;
  }
}

.pp-campus-map__acquired {
position:absolute;

  z-index:8;

  display:flex;
  align-items:center;

  gap:10px;

  padding:12px 16px;

  color:#fff;

  background:rgba(10,10,10,.91);

  border:
    1px solid
    rgba(255,27,18,.82);

  box-shadow:
    0 12px 32px rgba(0,0,0,.20),
    0 0 0 1px rgba(255,255,255,.04) inset;

  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);

  pointer-events:none;
}

.pp-campus-map__acquired-dot {
width:7px;
  height:7px;

  flex:0 0 auto;

  border-radius:50%;

  background:var(--pp-campus-red);

  box-shadow:
    0 0 0 4px rgba(255,27,18,.14),
    0 0 8px rgba(255,27,18,.62);
}

.pp-campus-map__acquired strong {
display:block;

  font-family:var(--pp-font-heading);

  font-size:clamp(12px, .9vw, 15px);
  line-height:1.15;

  letter-spacing:-.015em;

  white-space:nowrap;

  color:#fff;
}

.pp-campus-map__acquired div > span {
display:block;

  margin-top:3px;

  font-family:var(--pp-font-body);

  font-size:clamp(10px, .72vw, 12px);
  line-height:1.2;

  color:rgba(255,255,255,.66);
}

.pp-campus-map__acquired--desktop {
left:59.3%;
  top:40.5%;

  transform:translate(-50%, -100%);
}

.pp-campus-map__acquired--desktop::before {
content:"";

  position:absolute;

  left:50%;
  top:100%;

  width:2px;
  height:46px;

  background:var(--pp-campus-red);

  transform:translateX(-50%);

  box-shadow:
    0 0 3px rgba(255,27,18,.72),
    0 0 8px rgba(255,27,18,.30);
}

.pp-campus-map__acquired--desktop::after {
content:"";

  position:absolute;

  left:50%;
  top:calc(100% + 42px);

  width:8px;
  height:8px;

  border:2px solid #fff;
  border-radius:50%;

  background:var(--pp-campus-red);

  transform:translateX(-50%);

  box-shadow:
    0 0 0 4px rgba(255,27,18,.16),
    0 0 10px rgba(255,27,18,.55);
}

.pp-campus-map__acquired--mobile {
display:none;
}

@media (min-width:768px) and (max-width:1199px) {
  .pp-campus-map__shell {
width:calc(100% - 32px);
  }

  .pp-campus-map__visual {
width:100%;
    max-width:1120px;
  }

  .pp-campus-map__trace {
stroke-width:6px;

    filter:
      drop-shadow(0 1px 1px rgba(0,0,0,.28))
      drop-shadow(0 0 1px rgba(255,255,255,.95))
      drop-shadow(0 0 3px rgba(255,27,18,.82))
      drop-shadow(0 0 7px rgba(255,27,18,.36));
  }
}

@media (min-width:1200px) and (max-width:1599px) {
  .pp-campus-map__visual {
width:100%;
    max-width:1180px;
  }

  .pp-campus-map__trace {
stroke-width:7px;
  }
}

@media (min-width:1600px) {
  .pp-campus-map__visual {
width:100%;
    max-width:1250px;
  }

  .pp-campus-map__trace {
stroke-width:7.5px;
  }
}

/* ========================================================= MOBILE Mantém estrutura preparada. Depois ajustamos ao ficheiro vertical correto. ========================================================= */

@media (max-width:767px) {
  .pp-campus-map {
padding:64px 0;
  }

  .pp-campus-map__shell {
width:calc(100% - 20px);
  }

  .pp-campus-map__head {
margin-bottom:26px;
  }

  .pp-campus-map__head > span {
margin-bottom:15px;

    font-size:11px;

    gap:11px;
  }

  .pp-campus-map__head > span::before {
width:34px;
  }

  .pp-campus-map__head h2 {
font-size:clamp(36px, 10vw, 50px);
    line-height:.98;
  }

  .pp-campus-map__head p {
margin-top:16px;

    font-size:15px;
    line-height:1.5;
  }

  .pp-campus-map__visual {
width:100%;
    max-width:none;

    aspect-ratio:1738 / 2048;
  }

  .pp-campus-map__svg--desktop {
display:none;
  }

  .pp-campus-map__svg--mobile {
display:block;
  }

  /* Vamos tratar a animação mobile quando usarmos a fotografia vertical definitiva. */

  .pp-campus-map__svg--mobile
  .pp-campus-map__trace {
fill:none;
  
    stroke:var(--pp-campus-red);
    stroke-width:7px;
  
    stroke-linecap:round;
    stroke-linejoin:round;
  
    vector-effect:non-scaling-stroke;
    shape-rendering:geometricPrecision;
  
    /*
      IMPORTANTE:
      já não usamos stroke-dashoffset para animar.
    */
    stroke-dashoffset:0 !important;
  
    opacity:0;
  
    filter:
      drop-shadow(0 1px 1px rgba(0,0,0,.28))
      drop-shadow(0 0 1.5px rgba(255,255,255,.95))
      drop-shadow(0 0 3px rgba(255,27,18,.92))
      drop-shadow(0 0 8px rgba(255,27,18,.42));
  
    animation:none !important;
    transition:none !important;
  
    will-change:
      stroke-dasharray,
      opacity;
  }

  .pp-campus-map__acquired--desktop {
display:none;
  }

  .pp-campus-map__acquired--mobile {
display:flex;

    left:62%;
    top:52%;

    width:36%;

    gap:7px;

    padding:8px 9px;

    transform:translateY(-50%);
  }

  .pp-campus-map__acquired--mobile::before {
content:"";

    position:absolute;

    right:100%;
    top:50%;

    width:24px;
    height:2px;

    background:var(--pp-campus-red);

    transform:translateY(-50%);
  }

  .pp-campus-map__acquired--mobile::after {
content:"";

    position:absolute;

    right:calc(100% + 20px);
    top:50%;

    width:6px;
    height:6px;

    border:1px solid #fff;
    border-radius:50%;

    background:var(--pp-campus-red);

    transform:translate(50%, -50%);
  }

  .pp-campus-map__acquired strong {
font-size:10px;

    white-space:normal;
  }

  .pp-campus-map__acquired div > span {
font-size:9px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pp-campus-map__trace {
animation:none !important;

    stroke-dasharray:none;
    stroke-dashoffset:0;

    opacity:1;
  }
}

/* ========================================================= PP TÊXTEIS — COOKIES ========================================================= */

.pp-cookie[hidden],
.pp-cookie-modal[hidden] {
display:none !important;
}

.pp-cookie {
position:fixed;
  z-index:999999;
  left:24px;
  right:24px;
  bottom:24px;

  max-width:1400px;
  margin:0 auto;

  background:rgba(255,255,255,.96);

  border:1px solid rgba(20,20,20,.09);
  border-radius:4px;

  box-shadow:
    0 20px 60px rgba(0,0,0,.11);

  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.pp-cookie__content {
display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:50px;

  padding:28px 32px;
}

.pp-cookie__text {
max-width:720px;
}

.pp-cookie__eyebrow {
display:block;

  margin-bottom:8px;

  font-size:11px;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;

  color:#A58667;
}

.pp-cookie__text h3 {
margin:0 0 8px;

  font-size:20px;
  line-height:1.2;
  font-weight:600;

  color:#111;
}

.pp-cookie__text p {
margin:0;

  max-width:700px;

  font-size:13px;
  line-height:1.65;

  color:#666;
}

.pp-cookie__text a {
color:#111;
  text-decoration:underline;
  text-underline-offset:3px;
}

.pp-cookie__actions {
display:flex;
  align-items:center;
  gap:10px;

  flex-shrink:0;
}

/* ========================================================= COOKIES — BOTÕES ========================================================= */

.pp-cookie__actions {
display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;

  flex-shrink:0;
}

.pp-cookie__btn {
display:inline-flex;
  align-items:center;
  justify-content:center;

  width:auto;
  min-width:112px;
  height:42px;
  min-height:42px;

  padding:0 22px;

  margin:0;

  border-radius:999px;

  font-family:var(--pp-font-body);
  font-size:13px;
  line-height:1;
  font-weight:600;

  white-space:nowrap;

  cursor:pointer;

  transform:none;

  transition:
    background-color .25s ease,
    border-color .25s ease,
    color .25s ease,
    transform .25s ease;
}

.pp-cookie__btn--secondary {
background:#fff;
  color:#111;

  border:1px solid rgba(17,17,17,.18);
}

.pp-cookie__btn--secondary:hover {
background:#f5f5f3;
  color:#111;

  border-color:rgba(17,17,17,.38);

  transform:translateY(-1px);
}

.pp-cookie__btn--primary {
min-width:150px;

  background:#111;
  color:#fff;

  border:1px solid #111;
}

.pp-cookie__btn--primary:hover {
background:#A58667;
  color:#fff;

  border-color:#A58667;

  transform:translateY(-1px);
}

.pp-cookie__btn:active {
transform:translateY(0) scale(.98);
}

.pp-cookie__btn:focus-visible {
outline:2px solid #A58667;
  outline-offset:3px;
}

@media (max-width: 991px) {
  .pp-cookie__actions {
gap:7px;
  }

  .pp-cookie__btn {
min-width:105px;
    height:40px;
    min-height:40px;

    padding:0 18px;

    font-size:12px;
  }

  .pp-cookie__btn--primary {
min-width:140px;
  }
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width: 768px) {
  .pp-cookie__actions {
display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;

    width:100%;
    margin-top:20px;
  }

  .pp-cookie__btn {
width:100%;
    min-width:0;

    height:44px;
    min-height:44px;

    padding:0 14px;

    font-size:12px;
  }

  .pp-cookie__btn--primary {
grid-column:1 / -1;

    width:100%;
    min-width:0;
  }
}

.pp-cookie-modal {
position:fixed;
  z-index:1000000;
  inset:0;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:24px;
}

.pp-cookie-modal__backdrop {
position:absolute;
  inset:0;

  background:rgba(0,0,0,.38);

  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}

.pp-cookie-modal__panel {
position:relative;
  z-index:2;

  width:min(620px, 100%);
  max-height:90vh;
  overflow-y:auto;

  padding:38px;

  background:#fff;

  box-shadow:
    0 30px 90px rgba(0,0,0,.22);
}

.pp-cookie-modal__close {
position:absolute;
  top:18px;
  right:20px;

  width:36px;
  height:36px;

  padding:0;

  border:0;

  background:transparent;
  color:#111;

  font-size:28px;
  font-weight:300;
  line-height:1;

  cursor:pointer;
}

.pp-cookie-modal__panel h2 {
margin:0 0 12px;

  font-size:28px;
  line-height:1.15;

  color:#111;
}

.pp-cookie-modal__intro {
margin:0 0 30px;

  max-width:530px;

  font-size:14px;
  line-height:1.65;

  color:#666;
}

/* ========================================================= COOKIE OPTION ========================================================= */

.pp-cookie-option {
display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;

  padding:22px 0;

  border-top:1px solid rgba(0,0,0,.09);
}

.pp-cookie-option h3 {
margin:0 0 5px;

  font-size:15px;
  font-weight:600;

  color:#111;
}

.pp-cookie-option p {
margin:0;

  max-width:440px;

  font-size:12px;
  line-height:1.55;

  color:#777;
}

.pp-cookie-switch {
position:relative;

  flex:0 0 auto;

  width:44px;
  height:24px;

  cursor:pointer;
}

.pp-cookie-switch input {
position:absolute;

  width:1px;
  height:1px;

  opacity:0;
}

.pp-cookie-switch span {
position:absolute;
  inset:0;

  border-radius:999px;

  background:#ddd;

  transition:.25s ease;
}

.pp-cookie-switch span::after {
content:"";

  position:absolute;

  top:3px;
  left:3px;

  width:18px;
  height:18px;

  border-radius:50%;

  background:#fff;

  box-shadow:0 2px 6px rgba(0,0,0,.18);

  transition:.25s ease;
}

.pp-cookie-switch input:checked + span {
background:#A58667;
}

.pp-cookie-switch input:checked + span::after {
transform:translateX(20px);
}

.pp-cookie-switch--disabled {
cursor:default;
  opacity:.65;
}

.pp-cookie-modal__actions {
display:flex;
  justify-content:flex-end;
  gap:10px;

  padding-top:24px;

  border-top:1px solid rgba(0,0,0,.09);
}

/* ========================================================= MOBILE ========================================================= */

@media (max-width: 768px) {
  .pp-cookie {
left:12px;
    right:12px;
    bottom:12px;
  }

  .pp-cookie__content {
display:block;

    padding:24px 20px;
  }

  .pp-cookie__text h3 {
font-size:19px;
  }

  .pp-cookie__text p {
font-size:12.5px;
  }

  .pp-cookie__actions {
display:grid;
    grid-template-columns:1fr 1fr;

    margin-top:20px;
  }

  .pp-cookie__btn {
width:100%;
  }

  .pp-cookie__btn--primary {
grid-column:1 / -1;
  }

  .pp-cookie-modal {
align-items:flex-end;

    padding:0;
  }

  .pp-cookie-modal__panel {
width:100%;
    max-height:92dvh;

    padding:
      32px
      20px
      calc(24px + env(safe-area-inset-bottom));
  }

  .pp-cookie-modal__panel h2 {
font-size:24px;
  }

  .pp-cookie-option {
gap:20px;
  }

  .pp-cookie-modal__actions {
flex-direction:column-reverse;
  }
}
