#whatsapp {
  position: fixed;
  right: 1rem;
  bottom: -20%;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0.25rem;
  padding: 0.45rem;
  opacity: 9;
  z-index: 10;
  transition: 0.4s;
  width: 60px;
  height: 60px;
  background-color: var(--brand-primary-600);
  border-radius: 100%;
}

#whatsapp svg {
  width: 75%;
  height: 75%;
}

.show-whatsapp {
  bottom: 1rem !important;
}

header {
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);

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

  height: 86px;
  width: 100%;
  padding: 0 1rem;
}

header .logo {
  width: 160px;
}

.button-cta {
  all: unset;
  background-color: var(--brand-primary);
  color: var(--text-light-primary);
  font-size: 14px;
  line-height: 125%;
  height: 46px;
  padding: 0 14px;
  border-radius: 6px;
  line-height: 1.25rem;
  cursor: pointer;

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

  transition: all 0.3s;

  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.mobile.button-cta {
  display: none;
}

.button-cta.white {
  background-color: var(--text-light-primary);
  color: var(--text-dark-primary);
}

.button-cta:hover {
  background-color: var(--brand-primary-600);
}

.button-cta.white:hover {
  background-color: var(--white-color-200);
}

.hero {
  background-image: url("../assets/images/hero.webp");
  background-repeat: no-repeat;
  background-size: cover;
  height: 800px;
  color: var(--text-light-primary);
}

.hero .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}

.hero .hero-data {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.hero .hero-data .text h1 {
  font-size: 52px;
  line-height: 62.4px;
  font-weight: bold;
  max-width: 600px;
  margin-bottom: 8px;
}

.hero .hero-data .text span {
  color: var(--text-light-secondary);
  font-size: 16px;
  line-height: 25.6px;
  font-weight: 400;
  max-width: 400px;
  display: block;
}

.hero .hero-data .info-cta {
  all: unset;
  width: fit-content;
  display: flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
}

.hero .hero-data .info-cta:hover {
  text-decoration: underline;
}

@media (max-width: 1024px) {
  .hero {
    background-position: 30%;
    height: 768px;
  }
}

@media (max-width: 768px) {
  header {
    justify-content: center;
    height: unset;
    top: 2rem;
  }

  header .logo {
    width: 125px;
  }

  header .button-cta {
    display: none;
  }

  .mobile.button-cta {
    display: flex;
  }

  .hero {
    background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
      url("../assets/images/hero.webp");
  }

  .hero .container {
    text-align: center;
  }

  .hero .hero-data {
    margin: auto;
    align-items: center;
  }

  .hero .hero-data .text span {
    margin: auto;
  }
}

@media (max-width: 600px) {
  .hero {
    background-position: 50%;
    height: 95svh;
    max-height: 700px;
  }

  .hero .hero-data .text h1 {
    font-size: 36px;
    line-height: 43.2px;
  }

  .hero .hero-data .text span {
    font-size: 14px;
    line-height: 22.4px;
  }
}

.section.partner {
  height: 180px;
  padding: 0 1rem;
  border-top: 1px solid var(--border-primary);
  border-bottom: 1px solid var(--border-primary);
}

.section.partner .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}

.section.partner .container .partner__title {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}

.section.partner .container .partner__title h2 {
  font-size: 28px;
  line-height: 33.6px;
  font-weight: 600;
  color: var(--text-dark-primary);
  max-width: 305px;
}

.section.partner .container .partner__title h2.mobile {
  display: none;
}

@media (max-width: 600px) {
  .section.partner {
    height: unset;
    padding: 4rem 1rem;
  }

  .section.partner .container {
    flex-direction: column;
    gap: 2rem;
  }

  .section.partner .container .partner__title {
    flex-direction: column;
    text-align: center;
  }

  .section.partner .container .partner__title h2.mobile {
    display: unset;
  }

  .section.partner .container .partner__title h2.web {
    display: none;
  }
}

.section.service .container .service__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.section.service .container .service__header .header__title {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.section.service .container .service__header .header__title h2 {
  font-size: 36px;
  font-weight: 600;
  line-height: 33.6px;
}

.section.service .container .service__header .header__title span {
  font-size: 16px;
  font-weight: 300;
  line-height: 22.4px;
  max-width: 266px;
  color: var(--text-dark-secondary);
}

.section.service .container .service__grid {
  display: grid;
  gap: 24px;
  /* grid-template-areas:
    "image image area-protegida"
    "cobertura-medica locacao-ambulancias aph"
    "remocoes plano cta"; */
  grid-template-areas:
    "area-protegida cobertura-medica locacao-ambulancias"
    "image image image"
    "aph remocoes cta";
  grid-template-rows: minmax(260px, auto);
  padding: 48px 0;
}

.section.service .container .service__grid .grid__item.image {
  grid-area: image;
  border-radius: 6px;
  border: unset;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
    url("../assets/images/bag.webp") no-repeat center;
  background-size: cover;

  display: flex;
  justify-content: flex-end;
  align-items: flex-start;

  font-size: 36px;
  line-height: 60px;
  font-weight: 400;
  text-align: left;
  color: var(--text-light-primary);
}

.section.service .container .service__grid .grid__item.image h2 {
  max-width: 900px;
}

.section.service .container .service__grid .grid__item.area-protegida {
  grid-area: area-protegida;
}

.section.service .container .service__grid .grid__item.cobertura-medica {
  grid-area: cobertura-medica;
}

.section.service .container .service__grid .grid__item.locacao-ambulancias {
  grid-area: locacao-ambulancias;
}

.section.service .container .service__grid .grid__item.aph {
  grid-area: aph;
}

.section.service .container .service__grid .grid__item.remocoes {
  grid-area: remocoes;
}

.section.service .container .service__grid .grid__item.cta {
  grid-area: cta;
  background-color: var(--brand-primary);
}

.section.service .container .service__grid .grid__item.cta .item__title h3 {
  color: var(--text-light-primary);
}

.section.service .container .service__grid .grid__item.cta p {
  color: #d4d4d4;
}

.section.service .container .service__grid .grid__item.cta .button-cta {
  background-color: var(--background-color);
  color: var(--text-dark-primary);
  width: fit-content;
}

.section.service .container .service__grid .grid__item.cta .button-cta:hover {
  background-color: var(--white-color-200);
}

.section.service .container .service__grid .grid__item {
  border: 1px solid var(--border-primary);
  border-radius: 6px;
  padding: 24px;

  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 16px;
}

.section.service .container .service__grid .grid__item .item__title {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.section.service .container .service__grid .grid__item .item__title h3 {
  font-size: 21;
  font-weight: 19.2px;
  font-weight: 600;
  color: var(--text-dark-primary);
}

.section.service .container .service__grid .grid__item p {
  font-size: 16px;
  font-weight: 300;
  line-height: 25.6px;
  color: var(--text-dark-secondary);
}

@media (max-width: 1024px) {
  .section.service .container .service__grid {
    /* grid-template-areas:
      "image image"
      "area-protegida cobertura-medica"
      "locacao-ambulancias aph"
      "remocoes plano"
      "cta cta"; */
    grid-template-areas:
      "image image"
      "area-protegida cobertura-medica"
      "locacao-ambulancias aph"
      "remocoes cta";
  }

  .section.service .container .service__grid .grid__item.image h2 {
    font-size: 36px;
    line-height: 41px;
    max-width: 520px;
  }
}

@media (max-width: 690px) {
  .section.service .container .service__grid {
    grid-template-areas:
      "area-protegida"
      "cobertura-medica"
      "locacao-ambulancias"
      "image"
      "aph"
      "remocoes"
      /* "plano" */
      "cta";
    grid-template-rows: none;
    grid-template-rows: minmax(260px, 340px);
    padding: 48px 0;
  }

  .section.service .container .service__grid .grid__item {
    max-height: 340px;
    height: 100%;
  }

  .section.service .container .service__grid .grid__item.image h2 {
    font-size: 24px;
    line-height: 29px;
    max-width: 520px;
    font-weight: 400;
  }
}

.section.minas-map {
  background: rgb(152, 20, 57);
  background: linear-gradient(
      270deg,
      rgba(152, 20, 57, 0.4892550770308123) 0%,
      rgba(152, 20, 57, 1) 62%,
      rgba(152, 20, 57, 1) 100%
    ),
    url("../assets/images/mapa_minas.webp");
  background-repeat: no-repeat;
  background-size: cover;
  color: var(--text-light-primary);

  height: 600px;
}

.section.minas-map .container {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  gap: 48px;
  height: 100%;
}

.section.minas-map .container .text {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.section.minas-map .container .text .title {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}

.section.minas-map .container .text .title h2 {
  font-size: 42px;
  line-height: 62.4px;
  font-weight: 700;
}

.section.minas-map .container .text p {
  color: #d4d4d4;
  font-size: 16px;
  line-height: 25.6px;
  font-weight: 300;
  max-width: 450px;
}

.section.minas-map .container .text p span {
  color: var(--text-light-primary);
  font-weight: 500;
}

@media (max-width: 690px) {
  .section.minas-map {
    background: rgb(152, 20, 57);
    background: linear-gradient(
        0deg,
        rgba(152, 20, 57, 0.7525603991596639) 0%,
        rgba(152, 20, 57, 0.8029805672268908) 17%,
        rgba(152, 20, 57, 1) 100%
      ),
      url("../assets/images/mapa_minas.webp");
    height: unset;
  }

  .section.minas-map .container {
    align-items: center;
    height: 100%;
    text-align: center;
    gap: 24px;
  }

  .section.minas-map .container .text {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
  }

  .section.minas-map .container .text .title {
    flex-direction: column;
  }
}

@media (max-width: 425px) {
  .section.minas-map .container .text .title h2 {
    font-size: 36px;
  }
}

.section.contact {
  border-top: 1px solid var(--border-primary);
  border-bottom: 1px solid var(--border-primary);
  height: 180px;
  padding: 0 1rem;
}

.section.contact .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}

.section.contact .container .contact__container {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
}

.section.contact .container .contact__container .container__text {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.section.contact .container .contact__container .container__text h2 {
  font-weight: 600;
  font-size: 28px;
  line-height: 33.6px;
  color: var(--text-dark-primary);
}

.section.contact .container .contact__container .container__text p {
  font-size: 16px;
  font-weight: 300;
  line-height: 25.6px;
  max-width: 380px;
  color: var(--text-dark-secondary);
}

.section.contact .container .contact__buttons {
  display: flex;
  align-items: center;
  gap: 24px;
}

.section.contact .container .contact__buttons .buttons__email {
  all: unset;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 300;
  line-height: 25.6px;
  max-width: 380px;
  cursor: pointer;
  color: var(--text-dark-secondary);
}

.section.contact .container .contact__buttons .buttons__email:hover {
  text-decoration: underline;
}

.section.contact .container .contact__buttons .buttons__splitter {
  width: 1px;
  height: 46px;
  background-color: #f0f0f0;
}

@media (max-width: 1024px) {
  .section.contact {
    height: unset;
    padding: 4rem 1rem;
  }

  .section.contact .container .contact__buttons {
    flex-direction: column-reverse;
    gap: 24px;
  }

  .section.contact .container .contact__buttons .buttons__splitter {
    display: none;
  }
}

@media (max-width: 768px) {
  .section.contact {
    height: unset;
    padding: 4rem 1rem;
  }

  .section.contact .container {
    flex-direction: column;
    gap: 48px;
  }

  .section.contact .container .contact__container {
    justify-content: center;
    text-align: center;
    flex-direction: column;
  }
}

footer {
  padding: 0 1rem;

  font-size: 14px;
  font-weight: 300;
  line-height: 25.6px;
  color: var(--text-dark-secondary);
}

footer .footer__up {
  padding: 3rem 0;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}

footer .footer__up .list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: fit-content;
}

footer .footer__up .list p {
  font-size: 16px;
  font-weight: 400;
  color: var(--text-dark-primary);
}

footer .footer__up .text__list {
  display: grid;
  grid-template-areas: "social phones sitemap";
  column-gap: 156px;
  row-gap: 8px;
}

footer .footer__up .list.phones {
  grid-area: phones;
}

footer .footer__up .list.sitemap {
  grid-area: sitemap;
}

footer .footer__up .list.social {
  grid-area: social;
}

footer .footer__up .list.logoagir {
  grid-area: logoagir;
  display: none;
}

footer .footer__up .list .items {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

footer .footer__up .list .items a {
  all: unset;
  cursor: pointer;
}

footer .footer__up .list .items .instagram img {
  max-width: 32px;
}

footer .footer__up .list .items a:hover {
  text-decoration: underline;
}

footer .footer__up .logo.list img {
  max-width: 160px;
  width: 100%;
}

footer .footer__down {
  border-top: 1px solid var(--border-primary);
}

footer .footer__down .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 72px;
}

footer .footer__down .container .down__company {
  display: flex;
  align-items: center;
  gap: 8px;
}

footer .footer__down .container .down__developer a {
  all: unset;
  font-weight: 400;
}

footer .footer__down .container .down__developer a:hover {
  text-decoration: underline;
  cursor: pointer;
}

@media (max-width: 1024px) {
  footer .footer__up .text__list {
    grid-template-areas:
      "phones sitemap"
      "social .";
  }
}

@media (max-width: 768px) {
  footer .footer__up .text__list {
    gap: 3rem;
  }
}

@media (max-width: 600px) {
  footer .footer__up .text__list,
  footer .footer__up {
    gap: 3rem;
  }

  footer .footer__up {
    all: unset;
    width: 100%;
  }

  footer .footer__up .text__list {
    padding: 3rem 0;
  }

  footer .footer__up .list.logoagir {
    display: contents;
  }

  footer .footer__up .text__list {
    grid-template-areas:
      "phones sitemap"
      "logoagir social";
  }

  footer .footer__up .list.logo {
    display: none;
  }
}

@media (max-width: 460px) {
  footer .footer__down .container {
    flex-direction: column;
    gap: 1rem;
    height: unset;
    padding: 1rem 0;
  }
}
