  :root {
      --bg-color: #e6e3d8;
      /* #e8e6df;*/
      --primary-color: #2F348A;
      --text-color: #555555;
      --container-width: 85%;
      --border-rgba: #d5cab2;
      --arya: 'Arya', sans-serif;
      --opensans: 'Open Sans', sans-serif;
      --title-noticias: #7E7864;
      --container-width-mobile: 100%;
      --light-blue: #54B9F8;
  }

  html,
  body {
      overflow-x: hidden !important;
  }

  body {
      background-color: var(--bg-color);
      color: var(--text-color);
      font-family: var(--opensans);
      font-weight: 300;
  }

  p {
      color: #2F348A;
      font-size: 20px;
      line-height: 26px;
  }

  .container-custom {
      width: var(--container-width);
      max-width: 1400px;
      margin: 0 auto;
      padding-left: 15px;
      padding-right: 15px;
  }

  .content-section .container {
      width: 60%;
      margin: 0 auto;
      max-width: 1280px;
      padding-left: 15px;
      padding-right: 15px;

  }

  #faleconosco h1 {
      border-bottom: solid 1px var(--primary-color);
      margin-bottom: 25px;
      padding-bottom: 15px;
      font-size: 40px;

  }

  #faleconosco.container {
      width: 60%;
      max-width: 1280px;
      margin: 0 auto;
      padding-left: 15px;
      padding-right: 15px;

  }

  #porqueinvestir .container {
      width: 60%;
      max-width: 1280px;
      margin: 0 auto;
      padding-left: 15px;
      padding-right: 15px;
  }

  .container-custom-head {
      width: var(--container-width);
      max-width: 1280px;
      margin: 0 auto;
      padding-left: 15px;
      padding-right: 15px;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
      color: var(--primary-color);
      font-weight: 700;
      font-family: var(--arya);
  }

  .text-primary-custom {
      color: var(--primary-color) !important;
  }

  .bg-primary-custom {
      background-color: var(--primary-color) !important;
  }

  .btn-custom {
      color: var(--primary-color);
      /*border-bottom: 2px solid var(--primary-color);*/
      padding: 0 0 5px 0;
      text-decoration: none;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 1px;
      display: inline-block;
      transition: all 0.3s ease;
      max-width: 150px;
  }

  .navbar-nav {
      margin-right: 100px;
  }

  .btn-custom:hover {
      color: #000;
      border-color: #000;
  }

  .btn-custom-white {
      color: #fff;
      /*border-bottom: 2px solid #fff;*/
  }

  .vertical-text {
      writing-mode: vertical-rl;
      transform: rotate(180deg);
      text-transform: uppercase;
      letter-spacing: 0.2em;
      font-weight: 600;
      color: var(--primary-color);
      white-space: nowrap;
      font-family: var(--arya);
      font-size: 30px;
  }

  .home-lastnews .vertical-text {
      font-size: 45px;
  }

  /* --- Header --- */
  .navbar-custom {
      background-color: var(--bg-color);
      padding: 20px 0;
      transition: all 0.3s ease;
  }

  .navbar-custom.scrolled {
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
      padding: 10px 0;
  }

  .nav-link {
      color: var(--primary-color) !important;
      font-weight: 600;
      margin: 0 10px;
  }

  .nav-link.active {
      border-bottom: solid 2px #2f348a;
  }

  /* --- Hero Slider & Lateral Column --- */
  .hero-section,
  .hero-section-interno {
      padding-top: 120px;
      position: relative;
  }

  .hero-slide img {
      width: 100%;
      height: 75vh;
      object-fit: cover;
  }

  .hero-slide-interno .hero-img-wrapper {
      width: 100%;
      height: 35vh;
      object-fit: cover;
  }


  .hero-overlay {
      position: absolute;
      bottom: 40px;
      left: 5%;
      color: #fff;
      z-index: 2;
  }

  .hero-overlay h2 {
      color: #fff;
      font-size: 2.5rem;
      text-transform: uppercase;
  }

  .mineit {
      min-height: 150px;
  }

  /* Coluna Lateral Unificada */
  /*  .hero-sidebar {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      align-items: center;
      padding: 20px 0;
  }*/

  .hero-sidebar {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      align-items: center;
      padding: 20px 0;
      position: absolute;
      top: 110px;
      right: 12%;
  }

  .social-sidebar a {
      color: var(--primary-color);
      font-size: 1.2rem;
      transition: color 0.3s;
  }

  .social-sidebar a:hover {
      color: #000;
  }

  .controls-sidebar {
      display: block;
      position: absolute;
      top: 650px;
      left: 30px;
  }

  .sidebar-dots .slick-dots {
      position: relative;
      bottom: auto;
      display: flex !important;
      flex-direction: column;
      gap: 8px;
      padding: 0;
      margin: 0;
  }

  .sidebar-dots .slick-dots li {
      margin: 0;
      width: 12px;
      height: 12px;
  }

  .sidebar-dots .slick-dots li button:before {
      color: var(--primary-color);
      font-size: 8px;
      opacity: 0.4;
  }

  .sidebar-dots .slick-dots li.slick-active button:before {
      color: var(--primary-color);
      opacity: 1;
  }

  .hero-arrows i {
      cursor: pointer;
      color: var(--primary-color);
      font-size: 1rem;
      transition: 0.2s;
  }

  .hero-arrows i:hover {
      color: #000;
  }

  .hero-counter {
      color: var(--primary-color);
      font-weight: 600;
      font-size: 0.9rem;
  }

  .hero-bottom-controls {
      margin-top: 25px;
      margin-left: 110px;
  }

  /* --- A Fazenda --- */
  .video-wrapper {
      position: relative;
      box-shadow: 15px 15px 0px rgba(0, 0, 0, 0.03);
      border-radius: 4px;
      overflow: hidden;
  }

  .play-btn {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      font-size: 4rem;
      color: rgba(255, 255, 255, 0.8);
      cursor: pointer;
  }

  /* --- Pilares --- */
  .pilares-section {
      padding: 200px 0px 100px 0px;
      background-image: url(../img/bg_pilares.png);
      background-repeat: repeat-x;
      background-position: top;

  }

  .item-pilares {
      max-width: 250px;
  }

  .pilar-icon {
      font-size: 1.8rem;
      color: var(--primary-color);
      margin-bottom: 12px;
  }

  /* --- Parallax Zoom --- */
  .zoom-parallax {
      width: 100%;
      height: 65vh;
      overflow: hidden;
  }

  .zoom-parallax img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 1.8s ease-out;
  }

  .zoom-parallax:hover img {
      transform: scale(1.08);
  }

  /* --- Oportunidades (Overflow Control) --- */
  .col-slider-wrapper {
      position: relative;
      margin-right: -50vw;
      padding-right: 50vw;
      overflow: hidden;
      /* Corta o conteúdo que tenta voltar para a esquerda sobre o texto */
  }

  .overflow-slider .slick-list {
      overflow: visible !important;
  }

  .overflow-slider .slick-slide {
      margin: 0 5px;
      opacity: 0.4;
      transition: opacity 0.4s;
  }

  .overflow-slider .slick-active {
      opacity: 1;
  }

  .overflow-slider .slick-slide img {
      min-height: 460px;
      object-fit: cover;
  }

  .oportunidades-controls {
      display: flex;
      align-items: center;
      gap: 25px;
      margin-top: 30px;
  }

  .op-dots .slick-dots {
      position: relative;
      display: flex !important;
      flex-direction: row !important;
      gap: 6px;
      padding: 0;
      margin: 0;
      list-style: none;
      bottom: auto;
  }

  .op-dots .slick-dots li {
      margin: 0;
      width: 10px;
      height: 10px;
  }

  .op-dots .slick-dots li button:before {
      color: var(--primary-color);
      font-size: 6px;
  }

  /* --- Marcas Infinite --- */
  .marcas-section {
      padding: 50px 0;
  }

  .marcas-slider img {
      /*max-width: 140px;
      margin: 0 auto;*/
      opacity: 1;
  }

  /* --- CTA Block --- */
  .cta-bg {
      background-color: var(--primary-color);
      padding: 60px;
  }

  /* --- Notícias --- */
  .news-card {
      padding: 10px 50px;
  }

  .news-card img {
      width: 100%;
      height: 270px;
      object-fit: cover;
      margin-bottom: 15px;
  }

  .news-card h6 {
      color: var(--title-noticias);
      font-size: 22px;
  }

  /* --- Footer Custom Lines --- */
  .footer-col-separator {
      border-right: 2px solid var(--border-rgba);
  }

  .footer-line-block {
      border-bottom: 2px solid var(--border-rgba);
      padding-bottom: 20px;
      margin-bottom: 20px;
  }

  footer {
      background-image: url(../img/bgfooter.png);
      background-position: center bottom;
      background-repeat: repeat-x;
      padding: 80px 0 30px 0;
  }

  .footer-logo {
      max-width: 290px;
      margin-bottom: 25px;
  }

  .logos-footer img {
      max-width: 170px;
      padding: 10px;
  }

  .footer-links a {
      color: var(--primary-color);
      text-decoration: none;
      margin-right: 20px;
      font-weight: 600;
      font-size: 0.9rem;
  }

  .copy-text {
      font-size: 20px;
      color: var(--primary-color);
      margin-top: 50px;
      border-top: 1px solid var(--border-rgba);
      padding-top: 20px;
  }

  @media (max-width: 991.98px) {
      .footer-col-separator {
          border-right: none;
          border-bottom: 2px solid var(--border-rgba);
          padding-bottom: 30px;
          margin-bottom: 30px;
      }

      .hero-sidebar {
          display: none !important;
      }
  }

  .home-oportunidades {
      padding: 150px 0px;
  }

  .home-lastnews .btn-custom {
      font-size: 20px !important;
      margin-left: 50px;
  }

  .news-card .btn-custom {
      margin-left: 0;
  }

  .btn-blu {
      color: #62bcf4;
      /*border-bottom: solid 2px #62bcf4;*/
  }

  .ajd {
      margin-top: -30px !important;
  }

  /* mobile */

  @media screen and (max-width: 767px) {
      .navbar-brand img {
          max-height: 50px;
      }

      .container-custom {
          width: var(--container-width-mobile);
          margin: 0 auto;
          padding-left: 15px;
          padding-right: 15px;
      }

      .navbar-custom {
          max-width: 400px;
      }

      .hero-section .container-custom {
          padding-left: 0;
      }

      .hero-bottom-controls {
          margin-top: -80px;
          margin-left: 15px;
          position: relative;
          z-index: 9090909090;
      }

      .hero-bottom-controls .btn-custom {
          color: #fff;
          border-color: #fff;

      }

      .hero-overlay {
          bottom: 130px;
          background-color: rgba(255, 255, 255, 0.6);
          left: 0;
          right: 20%;
          padding: 15px;
      }

      .hero-overlay h2 {
          color: var(--primary-color);
      }

      .mobile-offset-text {
          padding-left: 50px;
      }

      .pilares-section {
          padding: 100px 0px;
          background-size: 900px;
          background-position: bottom;
      }

      .pilares-section .container-custom {
          padding-left: 50px;
      }

      .item-pilares {
          margin-bottom: 50px;
      }

      .zoom-parallax img {
          height: 260px;
      }

      .zoom-parallax {
          width: 100%;
          height: auto;
          overflow: hidden;
      }

      .home-oportunidades {
          padding: 90px 0px;
      }

      .mobile-pad {
          padding-left: 50px;
      }

      footer {
          text-align: center;
      }

      .logos-footer img {
          max-width: 114px;
          padding: 10px;
      }

      .mobile-address {
          margin-top: 20px;
          border-top: solid 2px var(--border-rgba);
      }

      .offcanvas {
          background-color: rgba(56, 60, 143, 0.78);
      }

      .navbar-nav {
          margin-right: 1px;
          margin-left: 85px;
      }

      .nav-link {

          color: #fff !important;
          font-weight: 600;
          font-family: var(--arya);
          font-size: 20px;
          border-bottom: solid 1px #8D7F68;
          margin-bottom: 20px;
      }

      .hero-section {
          padding-top: 70px;
          position: relative;
      }


  }



  /* --- A FAZENDA */

  /* Topo Interno */
  .secao-topo-interno {
      width: 100%;
      height: 60vh;
      overflow: hidden;
      position: relative;
      margin-bottom: 5rem;
  }

  .parallax-bg {
      position: absolute;
      top: -5%;
      left: -5%;
      width: 110%;
      height: 110%;
      background-image: url('https://images.unsplash.com/photo-1500382017468-9049fed747ef?ixlib=rb-4.0.3&auto=format&fit=crop&w=2000&q=80');
      /* Imagem provisória */
      background-size: cover;
      background-position: center;
      transition: transform 0.1s ease-out;
  }

  /* Seção Testemunha */
  .secao-testemunha {
      padding: 5rem 0 10rem 0;
      position: relative;
  }

  .title-primary {
      font-size: 2.8rem;
      text-transform: uppercase;
      line-height: 1.2;
      margin-bottom: 2rem;
      color: #2F348A;
      padding-right: 130px;
  }

  .text-content {
      font-size: 1.05rem;
      line-height: 1.8;
      color: #2F348A;
  }

  .vertical-text-container {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      height: 100%;
  }

  .vertical-gold {
      color: #C6B28F !important;
      font-size: 36px !important;
  }

  /* Seção Memórias */
  .secao-memorias {
      background-color: #2F348A;
      position: relative;
      padding-bottom: 20rem;
      margin-top: 15rem;
  }

  /* Efeito Ondas no fundo azul */
  .secao-memorias::after {
      content: '';
      position: absolute;
      bottom: -5px;
      left: 0;
      width: 100%;
      height: 494px;
      background-image: url(../img/ondasazuis.svg);
      background-size: cover;
      background-repeat: no-repeat;
      z-index: 1;
  }

  .img-overlap-container {
      position: relative;
      top: -15rem;
      /* Metade da imagem para fora do container azul */
      margin-bottom: -15rem;
      z-index: 10;
  }

  .img-overlap {
      width: 100%;
      height: auto;
      max-height: 450px;
      object-fit: cover;
      box-shadow: 0 25px 50px rgba(0, 0, 0, 0.3);
      border: 5px solid rgba(255, 255, 255, 0.1);
  }

  .memorias-content {
      color: white;
      text-align: center;
      padding-top: 170px;
      position: relative;
      z-index: 5;
  }

  .memorias-content h2 {
      color: white;
      font-size: 2.5rem;
      text-transform: uppercase;
      margin-bottom: 2rem;
      letter-spacing: 1px;
  }

  .memorias-content p {
      color: rgba(255, 255, 255, 0.85);
      font-size: 1.1rem;
      max-width: 900px;
      margin: 0 auto;
      line-height: 1.8;
      font-weight: 300;
  }

  /* Seção Itens */
  .secao-itens {
      padding: 5rem 0 4rem 0;
      background-color: var(--bg-color);
      position: relative;
      z-index: 2;
  }

  .item-block {
      margin-bottom: 3rem;
      padding-right: 2rem;
  }

  .item-block h3 {
      font-size: 30px;
      margin-bottom: 1rem;
      padding-left: 20px;
  }

  .item-block p {
      font-size: 20px;
      line-height: 1.7;
      padding: 20px;
  }

  .brasao-placeholder {
      max-width: 200px;
      opacity: 1;

      margin-top: 0rem;
  }

  /* Utilitários responsivos */
  @media (max-width: 992px) {
      .container-85 {
          width: 95%;
      }

      .vertical-text {
          display: none;
      }

      .title-primary {
          font-size: 2rem;
      }

      .secao-memorias {
          margin-top: 14rem;
      }

      .img-overlap-container {
          top: -5rem;
          margin-bottom: -5rem;
      }

      .item-block {
          margin-bottom: 2rem;
          padding-right: 0;
      }

  }




  /* PÁGINA OPORTUNIDADES */


  /* --- Hero 2 Interno --- */
  .hero2-section {
      /* Usando um placeholder que remete à ilustração azul do background */
      background-image: url('../img/hero2.png');
      background-size: cover;
      background-position: center;
      padding: 120px 0;
      position: relative;
      height: 100vh;
  }

  .hero2-content {
      background-color: transparent;
      max-width: 700px;
      background: rgba(230, 227, 216, 0.85);
      margin-top: 25%;
      padding: 40px;
  }

  .hero2-content h1 {
      font-size: 2.8rem;
      font-weight: 700;
      text-transform: uppercase;
      margin-bottom: 20px;
      letter-spacing: 1px;
  }

  .hero2-content p {
      font-size: 1.05rem;
      line-height: 1.7;
      color: var(--primary-color);
  }

  /* --- Seções de Conteúdo (Image/Text & Text/Image) --- */
  .content-section {
      padding: 90px 0;
  }

  .bg-beige {
      background-color: var(--bg-beige);
  }

  .bg-white {
      background-color: #f0ece6 !important;
      /* Tom levemente acinzentado do mockup para o fundo claro */
  }



  .section-subtitle-inline {
      font-size: 1.2rem;
      text-transform: none;
      font-weight: 400;
  }


  /* Listas com marcadores customizados */
  .feature-list {
      list-style: none;
      padding-left: 0;
      margin-bottom: 35px;
  }

  .feature-list li {
      position: relative;
      padding-left: 20px;
      margin-bottom: 15px;
      font-size: 0.95rem;
      color: var(--primary-color);
      font-weight: 600;
      line-height: 1.5;
  }

  .feature-list li::before {
      content: "•";
      color: var(--primary-color);
      position: absolute;
      left: 0;
      top: 0;
      font-size: 1.2rem;
      line-height: 1.2;
  }

  /* Botão / Link Participar */
  .btn-participar {
      display: inline-block;
      color: var(--link-color);
      text-decoration: none;
      text-transform: uppercase;
      font-weight: 600;
      font-size: 0.95rem;
      border-bottom: 2px solid var(--link-color);
      padding-bottom: 2px;
      transition: all 0.3s ease;
      letter-spacing: 0.5px;
  }

  .btn-participar:hover {
      color: var(--primary-color);
      border-color: var(--primary-color);
  }

  /* Imagens */
  .img-wrapper {
      position: relative;
  }

  .img-wrapper img {
      width: 100%;
      height: auto;
      object-fit: cover;
      border-radius: 2px;
      box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
  }

  /* Responsividade */
  @media (max-width: 991px) {
      .section-title {
          font-size: 1.8rem;
      }

      .hero2-content h1 {
          font-size: 2.2rem;
      }
  }

  @media (max-width: 768px) {
      :root {
          --container-width: 95%;
      }

      .hero2-section {
          padding: 60px 0;
      }

      .content-section {
          padding: 60px 0;
      }

      /* Reordenação no mobile para a seção Text/Image */
      .order-mobile-2 {
          order: 2;
          margin-top: 30px;
      }

      .order-mobile-1 {
          order: 1;
      }

      .ps-md-5,
      .pe-md-5 {
          padding-left: 15px !important;
          padding-right: 15px !important;
      }

      .img-wrapper {
          margin-bottom: 30px;
      }
  }


  /*  POR QUE INVESTIR */

  /* Helpers de Seção */
  .section-padding {
      padding: 100px 0;
  }

  .bg-blue-dark {
      background-color: var(--primary-color);
      color: white;
  }

  .bg-blue-dark h2,
  .bg-blue-dark h3 {
      color: white;
  }

  .bg-beige {
      background-color: var(--bg-beige);
  }

  /* Hero Image - Topo */
  .hero-image-top img,
  .full-width-img img {
      width: 100%;
      height: auto;
      display: block;
      object-fit: cover;
  }

  .hero-image-top img {
      max-height: 600px;
  }

  /* Seção: O Tempo da Virada */
  .tempo-virada-section {
      padding: 120px 0 80px;
  }

  .tempo-virada-title {
      font-size: 2.8rem;
      font-weight: 700;
      text-transform: uppercase;
      margin-bottom: 40px;
      line-height: 1.2;
  }

  .tempo-virada-text {
      font-size: 1.1rem;
      line-height: 1.8;
      color: var(--primary-color);
      margin-bottom: 25px;
      max-width: 800px;
  }

  .outline-text {
      margin-top: 60px;
      font-size: 4rem;
      font-weight: 700;
      text-transform: uppercase;
      color: transparent;
      -webkit-text-stroke: 1.5px #a3adc2;
      /* Cor da borda do texto vazado */
      line-height: 1.1;
      font-family: var(--arya);
      letter-spacing: 1px;
  }

  /* Seção: Contexto Atual */
  .contexto-title {
      font-size: 40px;
      text-transform: uppercase;
      font-weight: 600;
      margin-bottom: 30px;
  }

  .num-block {
      display: flex;
      align-items: flex-start;
      margin-bottom: 40px;
  }

  .num-block .big-num {
      font-family: var(--arya);
      font-size: 5.5rem;
      line-height: 0.75;
      color: var(--light-blue);
      margin-right: 20px;
      font-weight: 600;
  }

  .num-block .num-text {
      font-size: 25px;
      line-height: 1.5;
      font-weight: 400;
      color: inherit;
      max-width: 370px;
  }

  /* Marca d'água no Contexto Atual (Brasão) */
  .watermark-brasao {
      position: absolute;
      right: 20%;
      bottom: 10%;
      opacity: 1;
      width: 300px;
      pointer-events: none;
  }

  /* Seção: Projeções */
  .projecoes-section {
      background-image: url(../img/fundo_projecoes.png);
      position: relative;
      min-height: 1100px;
      background-position: center -169px;
      padding-top: 180px;
  }

  .proj-item {
      margin-bottom: 40px;
  }

  .proj-val {
      font-family: var(--arya);
      font-size: 4.5rem;
      color: var(--light-blue);
      line-height: 1;
      font-weight: 600;
      display: inline-block;
  }

  .proj-val-small {
      font-size: 2.5rem;
      font-weight: 600;
  }

  .proj-desc {
      font-size: 26px;
      color: var(--primary-color);
      font-weight: 600;
      line-height: 1.4;
      margin-top: 10px;
      max-width: 250px;
      font-family: var(--arya);
  }

  /* Seção: Comunidade */
  .comunidade-section {
      padding: 0px;
      position: relative;
      margin-top: -120px;
  }

  .img-comunidade {
      width: 100%;
      height: auto;
      object-fit: cover;
      box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
  }

  .comunidade-title {
      font-size: 2.2rem;
      text-transform: uppercase;
      font-weight: 600;
      margin-bottom: 20px;
      line-height: 1.2;
  }

  .comunidade-subtitle {
      font-size: 1.1rem;
      font-weight: 600;
      color: var(--primary-color);
      margin-bottom: 20px;
  }

  .comunidade-text {
      font-size: 1rem;
      line-height: 1.7;
      color: var(--text-color);
  }

  /* Seção: Como Participar */
  .como-participar-section {
      padding: 80px 0;
      background-color: var(--bg-beige);
  }

  .como-participar-section .big-num {
      color: var(--light-blue);
  }

  .como-participar-section .num-text {
      color: var(--primary-color);
      font-weight: 600;
      font-size: 26px;
      font-family: var(--arya);
  }

  /* Responsividade */
  @media (max-width: 991px) {
      .outline-text {
          font-size: 2.5rem;
      }

      .tempo-virada-title {
          font-size: 2.2rem;
      }

      .num-block .big-num,
      .proj-val {
          font-size: 4rem;
      }
  }

  @media (max-width: 768px) {
      :root {
          --container-width: 95%;
      }

      .section-padding {
          padding: 60px 0;
      }

      .outline-text {
          font-size: 2rem;
          -webkit-text-stroke: 1px #a3adc2;
      }

      .watermark-brasao {
          display: none;
      }

      .comunidade-content {
          margin-top: 40px;
      }
  }


  /*
  contato
  */


  /* Contato */
  .contact-info {
      margin-bottom: 40px;
  }

  .contact-info h3 {
      font-size: 1.5rem;
      margin-bottom: 20px;
  }

  .contact-info p {
      margin-bottom: 10px;
      font-size: 1.1rem;
      padding-right: 100px;

  }

  .contact-info p strong {
      font-weight: 700;
  }

  .contact-info hr {
      max-width: 100px;
      background-color: #2F348A;
      border: 1px solid #2F348A;
      margin: 20px 0;
      opacity: 1;
  }

  .marginbaixa {
      padding-bottom: 80px;
      padding-top: 10px;
  }

  .arya {
      font-family: var(--arya);
      font-size: 20px;
  }

  /* Form */
  .form-control {
      border: none;
      border-bottom: 1px solid #ccc;
      background: transparent;
      border-radius: 0;
      padding: 10px 0;
      margin-bottom: 20px;
  }

  .form-control:focus {
      box-shadow: none;
      border-bottom: 1px solid var(--primary-color);
  }

  .btn-enviar {
      background-color: transparent;
      border: 2px solid var(--primary-color);
      color: var(--primary-color);
      padding: 10px 40px;
      text-transform: uppercase;
      font-weight: 600;
      transition: 0.3s;
  }

  .btn-enviar:hover {
      background-color: var(--primary-color);
      color: #fff;
  }

  /* Mapa */
  .map-section {
      margin-top: 60px;
      padding-bottom: 80px;
  }

  #map-section {
      padding: 100px 0px;
  }

  #map-section .vertical-text {
      writing-mode: vertical-rl;
      transform: rotate(180deg);
      text-transform: uppercase;
      letter-spacing: 0.2em;
      font-weight: 600;
      color: var(--border-rgba);
      white-space: nowrap;
      font-family: var(--arya);
      font-size: 30px;
      margin: 0;
  }

  #map-section h5 {
      text-align: right;
      padding: 50px;
      font-size: 30px;
  }

  .map-placeholder {
      width: 100%;
      height: 450px;
      background-color: #e0e0e0;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #888;
      border: 1px solid #ccc;
  }

  .map-title {
      font-size: 2rem;
      text-transform: uppercase;
      margin-bottom: 30px;
  }

  @media screen and (max-width: 767px) {

      .hero-img-wrapper img {
          object-fit: cover;
          height: 250px;
      }

      .hero-slider .hero-img-wrapper img {
          height: 570px;
      }

      .hero-section-interno .container-custom {
          padding-left: 0;

      }

      .secao-testemunha .text-content {
          padding-left: 50px;
      }

      .text-end {
          position: relative
      }

      .text-end img {
          position: absolute;
          right: -150px;
      }

      .img-overlap {
          width: 100%;
          height: auto;
          min-height: 262px;
          object-fit: cover;
          box-shadow: 0 25px 50px rgba(0, 0, 0, 0.3);
          border: 5px solid rgba(255, 255, 255, 0.1);
      }

      .memorias-content h2 {
          font-size: 35px;
      }

      .secao-itens {
          padding: 0rem 0 5rem 0;
      }

      .content-section .container {
          width: 100%;
      }

      .tempo-virada-section {
          padding: 30px 0 80px;
      }

      #porqueinvestir .container {
          width: 100%;

      }

      .outline-text {
          font-size: 3rem;
      }

      .comunidade-section img {
          width: 100%;
          max-height: 250px;
      }

      .projecoes-section {
          background-position: center -169px;
          padding-top: 80px;
      }

      #faleconosco.container {
          width: 100%;

      }

      .contact-info p {
          padding-right: 10px;
      }

      .marginbaixa {
          padding-bottom: 10px;
      }

      .mineit {
          min-height: 50px;
      }

      .interno-news .vertical-text {
          display: block;
      }
  }


  /* Cor de fundo principal de todo o bloco */
  #compartilhe {
      background-color: #DBD4C5;
      /* Bege de fundo */
      padding-top: 100px;
      padding-bottom: 100px;
      font-family: Arial, sans-serif;
      /* Fonte base neutra */
  }

  /* Título Principal */
  #compartilhe h2 {
      font-size: 42px;
      font-weight: bold;
      color: #2F3A72;
      /* Azul escuro do título */
      text-transform: uppercase;
      letter-spacing: 1px;
      margin-bottom: 30px;
  }

  /* Parágrafos de texto */
  #compartilhe p {
      color: #7B85A1;
      /* Azul acinzentado claro do texto */
      font-size: 16px;
      line-height: 1.6;
      margin-bottom: 30px;
      max-width: 90%;
      /* Limita a largura para melhor legibilidade */
  }

  /* Área do Formulário */
  #compartilhe .form-section {
      padding-left: 20px;
  }

  /* Estilização para Inputs (Nome, Telefone, E-mail) - Linha única */
  #compartilhe .form-control {
      background-color: transparent;
      border: none;
      border-bottom: 1px solid #7B85A1;
      /* Linha de borda */
      border-radius: 0;
      padding-left: 0;
      margin-bottom: 30px;
      color: #7B85A1;
      /* Cor do texto digitado */
  }

  /* Cor do placeholder (o texto "Nome", "Telefone") */
  #compartilhe .form-control::placeholder {
      color: #7B85A1;
      /* Cor suave do placeholder */
      opacity: 1;
      /* Garante que a cor seja aplicada */
  }

  /* Remove o destaque padrão do Bootstrap ao focar */
  #compartilhe .form-control:focus {
      background-color: transparent;
      box-shadow: none;
      border-bottom: 1px solid #2F3A72;
      /* Linha mais escura ao focar */
  }

  /* Área de Texto (Mensagem) - Caixa */
  #compartilhe textarea.form-control {
      border: 1px solid #ACA394;
      /* Borda da caixa de texto */
      height: 200px;
      /* Altura da caixa */
      padding: 10px;
  }

  /* Área dos Botões */
  #compartilhe .buttons-area {
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      /* Alinha os textos na base */
      margin-top: 10px;
  }

  /* Botão ENVIAR */
  #compartilhe .btn-enviar {
      color: #2F3A72;
      /* Azul escuro do botão */
      font-weight: bold;
      text-transform: uppercase;
      font-size: 16px;
      text-decoration: none;
      display: inline-block;
      cursor: pointer;
  }

  /* Linha decorativa abaixo de ENVIAR */
  #compartilhe .btn-enviar-underline {
      width: 40px;
      height: 3px;
      background-color: #2F3A72;
      margin-top: 4px;
  }

  /* Botão ANEXAR ARQUIVO */
  #compartilhe .btn-anexar {
      color: #8C8070;
      /* Cor marrom/acinzentada */
      font-size: 16px;
      text-decoration: none;
      cursor: pointer;
  }

  /* Linha decorativa abaixo de ANEXAR */
  #compartilhe .btn-anexar-underline {
      width: 80px;
      /* Um pouco mais longa */
      height: 3px;
      background-color: #8C8070;
      margin-top: 4px;
  }

  #depoimentos {
      background-color: #E2DDD2;
      /* Bege de fundo idêntico à imagem */
      padding: 100px 0;
      position: relative;
      font-family: Arial, sans-serif;
      overflow: hidden;
  }

  /* Container que centraliza o conteúdo */
  #depoimentos .depoimentos-container {
      max-width: 650px;
      margin: 0 auto;
      text-align: left;
      /* Alinhamento do texto conforme a imagem */
      position: relative;
      padding-left: 250px;
  }

  /* Cabeçalho fixo com Título e SVG de Aspas */
  #depoimentos .depoimentos-header {
      position: relative;
      display: inline-block;
      margin-bottom: 25px;
  }

  /* Ícone das aspas.svg posicionado por trás do título */
  #depoimentos .depoimentos-header .bg-aspas {
      position: absolute;
      top: -35px;
      left: -20px;
      width: 80px;
      height: auto;
      z-index: 1;
      opacity: 0.8;
      pointer-events: none;
  }

  /* Título DEPOIMENTOS */
  #depoimentos h2.titulo-secao {
      color: #2F3A72;
      /* Azul escuro principal */
      font-size: 32px;
      font-weight: bold;
      letter-spacing: 2px;
      text-transform: uppercase;
      position: relative;
      z-index: 2;
      /* Fica acima da imagem de aspas */
      margin: 0;
  }

  /* Ajustes no Carrossel Slick */
  #depoimentos .slick-slider {
      margin-bottom: 0;
  }

  /* Item individual do depoimento */
  #depoimentos .depoimento-item {
      outline: none;
      /* Remove bordas de foco ao clicar */
  }

  /* Texto do Depoimento */
  #depoimentos .depoimento-texto {
      color: #8A7E6C;
      /* Cor marrom/dourado acinzentado do layout */
      font-family: var(--arya);
      font-size: 25px;
      line-height: 1.8;
      letter-spacing: 1.5px;
      text-transform: uppercase;
      margin-bottom: 25px;
      font-weight: 500;
  }

  /* Autor do Depoimento */
  #depoimentos .depoimento-autor {
      color: #2F3A72;
      /* Azul escuro do autor */
      font-size: 16px;
      font-weight: normal;
  }

  /* Estilização opcional dos pontos (dots) de navegação do Slick */
  #depoimentos .slick-dots {
      bottom: -40px;
  }

  #depoimentos .slick-dots li button:before {
      color: #2F3A72;
      font-size: 10px;
  }

  #depoimentos .slick-dots li.slick-active button:before {
      color: #2F3A72;
  }

  /* =====================================================
   SINGLE POST — Estilos específicos
   ===================================================== */

  #article-page .article-title {
      font-size: 2.2rem;
      font-weight: 700;
      color: var(--primary-color);
  }

  #article-page .article-meta {
      color: var(--text-color);
      font-size: 0.9rem;
      opacity: 0.75;
  }

  #article-page .article-meta i {
      color: var(--primary-color);
  }

  #article-page .article-body {
      font-size: 1.1rem;
      line-height: 1.8;
      color: var(--text-color);
  }

  #article-page .article-body p {
      margin-bottom: 1.5rem;
  }

  #article-page .article-body img {
      max-width: 100%;
      height: auto;
      border-radius: 4px;
      margin: 1rem 0;
  }

  /* Breadcrumb estilizado */
  .breadcrumb-trail {
      font-size: 0.85rem;
  }

  .breadcrumb-link {
      color: var(--primary-color);
      text-decoration: none;
      transition: opacity 0.2s;
  }

  .breadcrumb-link:hover {
      opacity: 0.7;
      text-decoration: underline;
  }

  .breadcrumb-sep {
      color: var(--text-color);
      opacity: 0.5;
  }

  .breadcrumb-current {
      color: var(--text-color);
      font-weight: 600;
  }

  /* =====================================================
   PAGE LATERAL — Estilos do template com menu lateral
   ===================================================== */

  .sidebar-lateral {
      position: sticky;
      top: 100px;
  }

  .sidebar-lateral .sidebar-menu {
      padding: 0;
      margin: 0;
  }

  .sidebar-lateral .sidebar-menu li {
      border-bottom: 1px solid var(--border-rgba);
  }

  .sidebar-lateral .sidebar-menu li a {
      display: block;
      padding: 10px 0;
      color: var(--primary-color);
      text-decoration: none;
      font-size: 0.9rem;
      font-weight: 600;
      transition: padding-left 0.2s, color 0.2s;
  }

  .sidebar-lateral .sidebar-menu li a:hover,
  .sidebar-lateral .sidebar-menu li.current-menu-item>a,
  .sidebar-lateral .sidebar-menu li.current-page-ancestor>a {
      padding-left: 8px;
      color: #8A7E6C;
  }

  .sidebar-lateral .sidebar-menu .sub-menu {
      padding-left: 12px;
      list-style: none;
  }

  .sidebar-lateral .sidebar-menu .sub-menu li a {
      font-size: 0.85rem;
      font-weight: 400;
      color: var(--text-color);
  }

  @media screen and (max-width: 991px) {
      .sidebar-lateral {
          position: relative;
          top: auto;
          border-bottom: 2px solid var(--border-rgba);
          padding-bottom: 30px;
          margin-bottom: 30px;
      }
  }

  .social-icons {
      margin-top: -12px;
  }