body {
  margin: 0;
  padding: 0;
  background-color: #d9b695;
}

.wrapper {
  max-width: 2249px;
  margin: 0 auto;
  margin-top: 60px;
  padding: 0 20px;
  box-sizing: border-box;
}

.wrappers {
  max-width: 2249px;
  margin: 0 auto;
  margin-top: 160px;
  padding: 0 20px;
  box-sizing: border-box;
}

.wrapper2 {
  max-width: 2249px;
  margin: 0 auto;
  margin-top: -10px;
  padding: 0 20px;
  box-sizing: border-box;
}

.paragraph {
  max-width: 670px;
  margin: 30px auto;
  font-family: "Open Sans", sans-serif;
  font-size: 1.25rem;
  line-height: 2.06rem;
  box-sizing: border-box;
  color: #3f3e3e;
}

.paragraph a {
  color: #a1467c;
  text-decoration: none;
  font-weight: 700;
}

.wrapper-card {
  max-width: 2249px;
  margin: 0 auto;
  margin-top: 60px;
  padding: 0 20px;
  text-align: center;
  box-sizing: border-box;
}

.wrapper-space {
  height: 100px;
}

.paragraph-card {
  max-width: 670px;
  margin: 10px auto;
  font-family: "Open Sans", sans-serif;
  font-size: 1.25rem;
  line-height: 2.06rem;
  font-style: italic;
  box-sizing: border-box;
  color: #ffffff;
}

.oldh1 {
  font-family: "Open Sans", sans-serif;
  box-sizing: border-box;
  padding: 0;
  color: #001838;
  font-size: 60px;
  letter-spacing: -2px;
  line-height: 50px;
  font-weight: 700;
  max-width: 680px;
  margin: 30px auto;
}

.oldh2 {
  font-family: "Open Sans", sans-serif;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  color: var(--text-paragraph);
  font-size: 28px;
  letter-spacing: -1px;
  line-height: 30px;
  font-weight: 700;
  text-align: center;
  max-width: 950px;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  color: #ffffff;
  margin: 30px auto;
}

.evi-titulo {
  font-family: "Open Sans", sans-serif;
  box-sizing: border-box;
  padding: 0;
  color: #ffffff;
  font-size: 35px;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  letter-spacing: -2px;
  line-height: 50px;
  font-weight: 900;
  text-transform: uppercase;
  max-width: 680px;
  margin: 30px auto;
  margin-bottom: -25px;
}

.evi-titulo-5 {
  font-family: "Open Sans", sans-serif;
  box-sizing: border-box;
  padding: 0;
  color: #ffffff;
  font-size: 35px;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  letter-spacing: -2px;
  line-height: 50px;
  font-weight: 900;
  text-transform: uppercase;
  max-width: 680px;
  margin: 0 auto;
  margin-bottom: 50px;
}

h3-card {
  font-family: "Open Sans", sans-serif;
  box-sizing: border-box;
  padding: 0;
  color: #ffffff;
  font-size: 30px;
  letter-spacing: -2px;
  line-height: 50px;
  font-weight: 700;
  text-transform: uppercase;
  max-width: 680px;
  margin: 0px auto;
}

.evi-titulo2 {
  font-family: "Open Sans", sans-serif;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  color: var(--text-paragraph);
  font-size: 35px;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  letter-spacing: -2px;
  color: #ffffff;
  line-height: 30px;
  font-weight: 900;
  max-width: 680px;
  margin: 30px auto;
  margin-bottom: -10px;
}

.evi-titulo3 {
  font-family: "Open Sans", sans-serif;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  color: var(--text-paragraph);
  font-size: 26px;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  letter-spacing: -1px;
  color: #ffffff;
  line-height: 30px;
  font-weight: 700;
  max-width: 680px;
  margin: 30px auto;
  margin-bottom: -10px;
}

h5 {
  font-family: "Open Sans", sans-serif;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  color: var(--text-paragraph);
  font-size: 24px;
  letter-spacing: -2px;
  line-height: 30px;
  font-weight: 500;
  max-width: 680px;
  margin: 30px auto;
}

/* VALIDAR ABAIXO */
.image-container {
  display: flex;
  flex-wrap: wrap;
}

.image-container2 {
  position: relative;
  display: flex;
  height: 50px;
}

.opening-image {
  width: 100%;
  height: auto;
  display: block;
  display: none;
  margin: 0 auto;
  z-index: 1;
  margin-top: 5vw;
}

.titulo-container {
  position: absolute;
  bottom: 95px;
  left: 50px;
  right: 50px;
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
  font-family: "Open Sans", sans-serif;
  font-size: 60px;
  display: none;
  font-weight: bold;
  color: #001838;
}

.titulo-container2 {
  position: absolute;
  bottom: 95px;
  left: 50px;
  right: 50px;
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
  font-family: "Open Sans", sans-serif;
  font-size: 60px;
  display: none;
  font-weight: bold;
  color: #001838;
}

.textabre-container {
  position: absolute;
  bottom: 100px;
  left: 50px;
  right: 50px;
  line-height: 3vw;
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); /* Add this line for text shadow */
  font-size: 2vw;
  color: rgb(255, 255, 255);
}

/* Styles for screens with a maximum width of 335px */
@media only screen and (max-width: 1000px) {
  .textabre-container {
    font-size: 3vw;
    bottom: 43px;
    right: 15px;
    left: 15px;
  }

  .oldh2 {
    max-width: 650px;
  }
}

/* Styles for screens with a maximum width of 335px */
@media only screen and (max-width: 635px) {
  .textabre-container {
    font-size: 5vw;
    bottom: 53px;
    line-height: 30px;
    right: 15px;
    left: 15px;
  }
}

/* icones share */

.divider-container {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 10px 0 0 0;
}

.divider {
  flex-grow: 1;
  height: 1px;
  background-color: #ffffff;
  border: none;
  margin: 0 15px;
}

.social-icons {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 20px 10px;
}

.social-icons a {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 10px;
  width: 35px;
  height: 35px;
  color: #ffffff;
  background-color: #d9b695;
  border-radius: 50%;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.social-icons a:hover {
  background-color: #ffffff;
  color: #997f68;
}

.social-icons svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
}

.wrapper-wide {
  padding: 0 auto;
}

.image-container {
  display: flex;
  flex-wrap: wrap;
}

.image-mobile-screen {
  width: 100%;
  max-width: 680px;
  height: auto;
  display: block;
}

@media only screen and (min-width: 768px) {
  .image-mobile-screen {
    display: none;
  }
}

.image-wide-screen {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
  display: none;
}

@media only screen and (min-width: 768px) {
  .image-wide-screen {
    display: block;
  }
}

.video-container {
  position: relative;
  display: block;
  margin: 0 auto;
}

.video-wrapper {
  display: flex;
  justify-content: center;
}

.video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (min-width: 691px) {
  .video-container-lg {
    max-width: 1920px;
  }
  .video-lg {
    display: flex;
  }
  .video-md,
  .video-sm {
    display: none;
  }
}

@media (max-width: 690px) {
  .video-container-sm {
    max-width: 690px;
  }
  .video-sm {
    display: block;
  }
  .video-lg,
  .video-md {
    display: none;
  }
}

.figcaption2 {
  display: none;
}

/* PRELOADER */

.preloader-local {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1;
  -webkit-transition: ease opacity 0.2s;
  transition: ease opacity 0.2s;
  width: 100%;
  height: 100%;
  background: #fff;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  z-index: 3;
}

.preloader-local .preloader-logo-globoesporte,
.preloader-local .preloader-globoesporte {
  top: unset;
  left: unset;
  margin: 0;
}

.preloader-wrapper {
  background: #fff;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
}

.preloader-wrapper.loaded {
  opacity: 0;
  -webkit-transition: all 0.3s 0.6s ease-out;
  transition: all 0.3s 0.6s ease-out;
  visibility: hidden;
}

.preloader {
  -webkit-animation: spin 1s linear infinite;
  animation: spin 1s linear infinite;
  border-radius: 50%;
  border: 3px solid transparent;
  display: block;
  height: 150px;
  left: 50%;
  margin: -10px 0 0 -81px;
  position: relative;
  top: -10%;
  width: 150px;
}

.preloader::before {
  -webkit-animation: spin 2s linear infinite;
  animation: spin 2s linear infinite;
  content: "";
  bottom: 5px;
  border-radius: 50%;
  border: 3px solid transparent;
  left: 5px;
  position: absolute;
  right: 5px;
  top: 5px;
}

.preloader::after {
  -webkit-animation: spin 1.4s linear infinite;
  animation: spin 1.4s linear infinite;
  content: "";
  bottom: 15px;
  border-radius: 50%;
  border: 3px solid transparent;
  left: 15px;
  position: absolute;
  right: 15px;
  top: 15px;
}

.preloader-globoesporte {
  border-top-color: #048f37;
}

.preloader-globoesporte::before {
  border-top-color: #048f37;
}

.preloader-globoesporte::after {
  border-top-color: #048f37;
}

.preloader-sportv {
  border-top-color: #048f37;
}

.preloader-sportv::before {
  border-top-color: #048f37;
}

.preloader-sportv::after {
  border-top-color: #048f37;
}

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.preloader-logo-globoesporte {
  left: 50%;
  margin: -20px 0 0 -30px;
  position: absolute;
  top: 50%;
}

.preloader-logo-sportv {
  left: 50%;
  margin: -10px 0 0 -50px;
  position: absolute;
  top: 50%;
}

.preloader-logo-sportv .svg-preloader-logo {
  max-width: 80px;
  margin-left: 10px;
}

.preloader-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 9999;
  display: flex;
  justify-content: center;
  align-items: center;
}

#preloader,
#preloader2,
#preloader3 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100px;
  height: 100px;
  z-index: 999;
}

#preloader img {
  width: 100%;
  height: 100%;
}

.preloadervideo,
.preloadervideo1,
.preloadervideo2,
.preloadervideo3,
.preloadervideo4,
.preloadervideo5,
.preloadervideo6,
.preloadervideo7,
.preloadervideo8,
.preloadervideo9,
.preloadervideo10,
.preloadervideo11,
.preloadervideo12,
.preloadervideo13,
.preloadercanvas0,
.preloadercanvas1,
.preloadercanvas2,
.preloadercanvas3,
.preloadercanvas4,
.preloadercanvas5,
.preloadercanvas6,
.preloadercanvas7,
.preloadercanvas8,
.preloadercanvas9,
.preloadercanvas10,
.preloadercanvas11,
.preloadercanvas12,
.preloadercanvas13 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: auto;
}

.preloadervideo img,
.preloadervideo1 img,
.preloadervideo2 img,
.preloadervideo3 img,
.preloadervideo4 img,
.preloadervideo5 img,
.preloadervideo6 img,
.preloadervideo7 img,
.preloadervideo8 img,
.preloadervideo9 img,
.preloadervideo10 img,
.preloadervideo11 img,
.preloadervideo12 img,
.preloadervideo13 img,
.preloadercanvas0 img,
.preloadercanvas1 img,
.preloadercanvas2 img,
.preloadercanvas3 img,
.preloadercanvas4 img,
.preloadercanvas5 img,
.preloadercanvas6 img,
.preloadercanvas7 img,
.preloadercanvas8 img,
.preloadercanvas9 img,
.preloadercanvas10 img,
.preloadercanvas11 img,
.preloadercanvas12 img,
.preloadercanvas13 img {
  display: none;
  max-width: 100%;
  max-height: 100%;
}

@media (max-width: 768px) {
  .img-wrapper {
    padding: 0 10px;
  }
}

.img-wrapper {
  max-width: 1200px;
  margin: 0 auto;
  margin-top: 60px;
  padding: 0 20px;
  box-sizing: border-box;
  text-align: center;
}

.img-container {
  display: inline-block;
  vertical-align: top;
  margin: 0 10px; /* Center the image containers */
  max-width: 100%; /* Ensure images don't exceed container width */
  text-align: center; /* Center the content inside each container */
}

.img-container img {
  max-width: 100%; /* Ensure images don't exceed their container */
  height: auto; /* Maintain aspect ratio */
}

.img-coral {
  max-width: 100%; /* Ensure images don't exceed their container */
}

.img-caption {
  text-align: center;
  max-width: 670px;
  margin: 0 auto; /* Center the caption */
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  line-height: 1.36rem;
  box-sizing: border-box;
  max-width: 450px;
  color: #ffffff;
  letter-spacing: 0px;
  text-align: left;
}

b-body {
  margin: 0;
  font-family: "Open Sans", sans-serif;
  background-color: #162447;
  color: #fff;
}

.b-container {
  text-align: center;
  padding: 20px;
}

.b-header div {
  margin: 0;
  font-size: 24px;
  font-weight: 600;
}

.b-italic {
  font-style: italic;
}

.b-categories {
  display: flex;
  justify-content: center;
  gap: 50px;
  margin: 20px 0;
}

.b-category {
  text-align: center;
  line-height: 35px;
}

.b-number {
  font-size: 48px;
  font-weight: 600;
}

.b-number2 {
  font-size: 30px;
  font-weight: 600;
  letter-spacing: -1p2;
}

.b-phase {
  margin: 60px 0;
}

.b-title {
  font-size: 24px;
  font-weight: 600;
}

.b-subtitle {
  font-size: 18px;
  font-weight: 400;
}

.b-groups {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 80px;
  margin: 20px 0;
}

.b-group {
  text-align: center;
}

.b-group-title {
  font-size: 27px;
  letter-spacing: -2px;
  font-weight: 600;
}

.b-info {
  font-size: 20px;
  font-weight: 400;
  max-width: 450px;
  font-style: italic;
  margin: 0 auto;
}

.b-bracket {
  margin: 0 auto;
  max-width: 690px;
}

@media (max-width: 768px) {
  .b-header div {
    font-size: 20px;
  }

  .b-number {
    font-size: 36px;
  }

  .b-title {
    font-size: 20px;
  }

  .b-subtitle {
    font-size: 16px;
  }

  .b-group-title {
    font-size: 18px;
  }

  .b-info {
    font-size: 14px;
  }
}

.bodydance {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100vw; /* Ensure the body spans the full viewport width */
  overflow-x: hidden; /* Prevent horizontal scrolling */
}

.container {
  text-align: center;
  width: 100%;
  max-width: 1200px;
  padding: 0;
  box-sizing: border-box;
}

.button-container {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  padding-bottom: 80px;
}

.dance-image {
  cursor: pointer;
  transition: transform 0.3s, opacity 1s;
  width: 100%;
  max-width: 880px;
  height: auto;
  max-width: 500px;
  display: block;
}

.dance-image:hover {
  transform: scale(1.05);
}

@media (max-width: 768px) {
  .dance-image {
    cursor: pointer;
    transition: transform 0.3s, opacity 1s;
    width: 85%;
    max-width: 680px;
    height: auto;
    max-width: 400px;
    display: block;
    padding-bottom: 40px;
  }
}

.f-width-image {
  width: 100vw; /* Set the width to 100% of the viewport width */
  height: auto; /* Maintain the original height */
  object-fit: cover; /* Ensures the image covers the container */
  margin: 0; /* Ensure no margins on the sides */
  display: block; /* Make sure the image is a block element */
  position: relative; /* Ensure proper positioning */
  left: 50%;
  transform: translateX(-50%);
  transition: opacity 2s;
}

#dance-video {
  display: flex;
  width: 100%;
  opacity: 0;
  margin-top: -120px;
  transition: opacity 2s;
}

@media (max-width: 768px) {
  #dance-video {
    margin-top: -150px;
  }
}

.section--credits {
  color: #ffffff;
  font-size: 0.8125rem;
  font-family: "Open Sans", sans-serif;
  line-height: 1em;
  margin: 9.375rem auto 6.875rem;
  max-width: 30.625rem;
  text-align: center;
}

.credits__title {
  font-size: 0.9rem;
  color: #ffffff;
  font-weight: bold;
  margin-bottom: 0.25rem;
  padding-bottom: 0rem;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
}

.hrcredit {
  color: #ffffff;
  border-color: #ffffff;
}

.credit__role {
  text-align: center;
  display: inline-block;
  padding-bottom: 0px;
  margin-bottom: 0px;
  width: 100%;
  margin-top: 15px;
}

.credit__role2 {
  text-align: center;
  display: inline-block;
  color: #ffffff;
  width: 100%;

  margin-bottom: 5px;
}

.credit__role3 {
  text-align: center;
  display: inline-block;
  color: #ffffff;
  margin-top: 5px;
  margin-bottom: 5px;
  width: 100%;
}

.credit__role4 {
  text-align: center;
  display: inline-block;
  color: #ffffff;
  margin-top: 5px;
  margin-bottom: 5px;
  width: 100%;
  line-height: 18px;
}

.evi-player {
  width: 670px;
  background: #f7dcc2;
  border-radius: 8px;
  display: flex;
  align-items: center;
  padding: 16px;
  margin: 0 auto;
  box-sizing: border-box;
  font-family: "Open Sans", sans-serif;
}
.evi-img {
  height: 100px;
  width: auto;
  border-radius: 5px;
  object-fit: cover;
  margin-right: 16px;
  flex-shrink: 0;
}
.evi-info {
  flex: 1;
}
.evi-title {
  margin: 0;
  font-size: 20px;
  color: #333;
}
.evi-artist {
  margin: 4px 0 12px;
  font-size: 14px;
  color: #666;
}
.evi-controls {
  display: flex;
  align-items: flex-end;
}

/* botão com estados */
.evi-play-button {
  position: relative;
  width: 40px;
  height: 40px;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  flex-shrink: 0;
  background: #4caf50;
  transition: background 0.2s;
}
.evi-play-button.evi-pause {
  background: #4caf50;
}

/* ícone centralizado com posições específicas */
.evi-play-icon {
  position: absolute;
  font-size: 20px;
  line-height: 1;
  color: #fff;
  user-select: none;
}
.evi-icon-play::before {
  content: "▶";
}
.evi-icon-pause::before {
  content: "❚❚";
}
/* posição customizada para cada estado */
.evi-play-icon.evi-icon-play {
  top: 50%;
  left: 53%;
  transform: translate(-50%, -50%);
}
.evi-play-icon.evi-icon-pause {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* barra de progresso */
.evi-progress-container {
  position: relative;
  flex: 1;
  height: 6px;
  background: #ddd;
  border-radius: 3px;
  margin: 0 12px;
  cursor: pointer;
}
.evi-duration {
  position: absolute;
  top: -20px;
  left: 0;
  font-size: 12px;
  color: #333;
}
.evi-progress-filled {
  width: 0%;
  height: 100%;
  background: #4caf50;
  border-radius: 3px;
}

.evideo {
  display: flex;
  margin-top: 20px;
  justify-content: center;
  align-items: center;
  margin: 110px auto;
}

.evid-size {
  transform: scale(1.5);
}

@media screen and (max-width: 768px) {
  .evid-size {
    transform: scale(0.8);
    margin: 110px auto;
  }
}

@media screen and (max-width: 480px) {
  .evid-size {
    transform: scale(0.6);
  }
}

@media screen and (max-width: 380px) {
  .evid-size {
    transform: scale(0.5);
  }
}

.vidabre-opening {
  margin-top: 50px;
  width: 100%;
  height: 100%;

  z-index: 1;
}

@media only screen and (max-width: 1000px) {
  .vidabre-opening {
    margin-top: 50px;
  }
}

.evitl-timeline {
  position: relative;
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
  padding: 20px 0;
  font-family: "Open Sans", sans-serif;
}

.evitl-line {
  position: absolute;
  left: 20px;
  top: 35px;
  bottom: 100px;
  width: 1px;
  background-color: #fff;
}

.evitl-item {
  position: relative;
  margin-bottom: 40px;
}

.evitl-dot {
  position: absolute;
  left: 16px;
  top: 12px;
  width: 10px;
  height: 10px;
  background-color: #fff;
  border-radius: 50%;
}

.evitl-medal {
  position: absolute;
  left: 9px;
  top: 4px;
}

.evitl-medal img {
  display: block;
  width: 24px;
  height: auto;
}

.evitl-year {
  margin: 0 0 6px 40px;
  font-size: 40px;
  font-weight: 200;
  line-height: 32px;
  color: #a1467c;
}

.evitl-title {
  margin: 0 0 10px 40px;
  font-size: 15px;
  font-weight: 600;
  text-transform: uppercase;
  color: #fff;
  line-height: 1.3;
}

.evitl-img {
  display: block;
  margin-left: 40px;
  width: calc(100% - 0px);
  max-width: 370px;
  height: auto;
}

@media only screen and (max-width: 690px) {
  .evitl-img {
    width: calc(100% - 60px);
  }

  .evi-player {
    width: 570px;
  }

  .evitl-line {
    bottom: 100px;
  }
}

@media only screen and (max-width: 590px) {
  .evi-player {
    width: 370px;
  }
}

/* Container e tipografia base */
.apgin-info {
  font-family: "Open Sans", Arial, sans-serif;
  color: #3f3e3e;
  max-width: 890px;
  margin: 0 auto;
  padding: 4px 16px 4px;
  line-height: 1.35;
  transform: scale(0.8);
  margin-top: -60px;
}

/* Títulos roxos (28px, ExtraBold) */
.apgin-heading,
.apgin-heading2 {
  color: #ffffff;
  font-size: 35px;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  letter-spacing: -2px;
  line-height: 50px;
  font-weight: 900;
  text-transform: uppercase;
}

/* Grid responsivo (1 col no mobile, 2 no desktop) */
.apgin-cols {
  display: grid;
  grid-template-columns: 1fr;
  gap: 28px;
  margin-bottom: 10px;
}
@media (min-width: 768px) {
  .apgin-cols {
    grid-template-columns: 1fr 1fr;
  }
}

/* Subtítulos roxos (30px, Light) */
.apgin-sub {
  font-size: 30px;
  font-weight: 300; /* Light */
  color: #a1467c;
  margin: 0 0 8px 0;
  text-transform: uppercase;
}

.apgin-sub2 {
  font-size: 30px;
  font-weight: 300; /* Light */
  color: #a1467c;
  margin: 0 0 8px 0;
  text-transform: uppercase;
  margin-top: 33px;
}

/* Chips roxos (36px) */
.apgin-chip {
  font-size: 36px;
  font-weight: 400;
  color: #a1467c;
  margin: 22px 0 6px;
}

/* Linhas divisórias (como no SVG) */
.apgin-rule {
  height: 1px;
  background: #f2f2f2;
  margin: 10px 0 12px;
}

/* Listas com bullets (bolinhas cinza-claro) */
.apgin-ul {
  list-style: none;
  padding: 0;
  margin: 0 0 6px 0;
}
.apgin-ul li {
  display: grid;
  grid-template-columns: 12px 1fr;
  align-items: start;
  column-gap: 10px;
  padding: 8px 0;
}
.apgin-dot {
  width: 9.34px; /* r=4.67px no SVG */
  height: 9.34px;
  border-radius: 50%;
  background: #f2f2f2;
  margin-top: 6px; /* alinha com a 1ª linha do texto */
  flex-shrink: 0;
}
.apgin-li {
  font-size: 20.7px;
  font-weight: 300; /* Light */
  color: #3f3e3e;
}

/* Parágrafos de texto */
.apgin-p {
  font-size: 20.7px;
  font-weight: 300;
  color: #3f3e3e;
  margin: 6px 0 0;
}

/* Destaques em bold dentro dos itens */
.apgin-bold {
  font-weight: 700;
}

/* Ajustes para telas menores */
@media (max-width: 480px) {
  .apgin-heading,
  .apgin-heading2 {
    font-size: 30px;
  }
  .apgin-sub {
    font-size: 26px;
  }

  .apgin-sub2 {
    font-size: 26px;
  }
  .apgin-chip {
    font-size: 32px;
  }
  .apgin-li,
  .apgin-p {
    font-size: 19px;
  }
}

.gincard-card {
  display: flex;
  text-decoration: none;
  background-color: #f3cfb0;
  border-radius: 4px;
  overflow: hidden;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  font-family: "Open Sans", sans-serif;
  max-width: 690px;
  margin: 0 auto;
}

.gincard-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
}

.gincard-image {
  flex-shrink: 0;
  width: 50%; /* mantém metade do card */
  display: flex;
  align-items: center; /* centraliza verticalmente */
  justify-content: center; /* centraliza horizontalmente */
  background-color: #f3cfb0; /* cor de fundo para preencher espaço */
}

.gincard-image img {
  width: 80%; /* faz a imagem ser menor que a área dela */
  height: auto;
}

.gincard-content {
  padding: 16px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #333;
  width: 50%;
}

.gincard-subtitle {
  font-size: 12px;
  color: #777;
  text-transform: uppercase;
  margin-bottom: 4px;
}

.gincard-title {
  font-size: 28px;
  font-weight: 900;
  color: #9b3486;
  margin: 0 0 8px;
}

.gincard-text {
  font-size: 14px;
  line-height: 1.4;
  margin: 0;
  color: #555;
}

/* Responsivo */
@media (max-width: 600px) {
  .gincard-card {
    flex-direction: column;
  }
  .gincard-image,
  .gincard-content {
    width: 100%;
  }
}
