
/* ── Reset básico ── */
*, *::before, *::after { box-sizing: border-box; }

body {
   margin: 0;
   font-family: "Open Sans", Arial, sans-serif;
   background-color: #f3f4f5;
}

p  { margin: 0; }
h1, h2, h3, h4 { margin: 0; }
a  { text-decoration: none; }
ul { margin: 0; padding: 0; list-style: none; }

.tpa-body {
   font-family: "Open Sans", Arial, sans-serif;
   overflow-x: clip;
   background-color: #f3f4f5;
}


/* HERO — Secção de topo (full-width, fundo #303336) */

.tpa-hero-section {
   background-color: #303336;
   width: 100%;
   height: 460px;
   display: flex;
   align-items: center;
   justify-content: center;
   padding: 0 25px;
   overflow: hidden;
}

.tpa-hero-content {
   max-width: 760px;
   width: 100%;
   text-align: center;
   display: flex;
   flex-direction: column;
   align-items: center;
}

.tpa-hero-eyebrow {
   font-family: "Lato", Arial, sans-serif;
   font-size: 12px;
   line-height: 1.45;
   text-transform: uppercase;
   color: #FFD139;
   margin-bottom: 24px;
   font-weight: 700;
}

.tpa-hero-title {
   font-family: "Lato", Arial, sans-serif;
   font-size: 48px;
   color: #FFFFFF;
   line-height: 1.2;
   margin: 0 0 36px;
   white-space: nowrap;
   font-weight: 700;
}

.tpa-hero-title::after {
   content: '.';
   color: #FFD139;
}

.tpa-hero-text {
   font-family: "Open Sans", Arial, sans-serif;
   font-size: 18px;
   line-height: 1.7;
   color: #FFFFFF;
   max-width: 100%;
   height: 62px;
   overflow: hidden;
}

@media (max-width: 599px) {
   .tpa-hero-section {
      height: auto;
      min-height: 380px;
      padding: 24px;
   }

   .tpa-hero-title {
      font-size: 32px;
      white-space: normal;
   }

   .tpa-hero-text {
      font-size: 16px;
      height: auto;
   }
}

@media (min-width: 600px) and (max-width: 899px) {
   .tpa-hero-section {
      height: 420px;
      padding: 0 32px;
   }

   .tpa-hero-title {
      font-size: 40px;
      white-space: normal;
   }
}

@media (min-width: 900px) and (max-width: 1279px) {
   .tpa-hero-section {
      height: 420px;
   }

   .tpa-hero-title {
      font-size: 44px;
   }
}
