.logo {
  line-height: 0;
}

.logo img {
  display: block;
  max-width: 180px;
  width: 100%;
  height: auto;
}


.services-style-one p {
  font-size: 15px;
  line-height: 1.6;
  opacity: .95;
}


.fancybox-slide--video .fancybox-content {
  z-index: 9;
}



.portfolio-page-img.details-three .portfolio-page-img-data img {
  width: 100%;
  height: 288px;
  /* padrão visual */
  object-fit: cover;
  /* corta sem distorcer */
  display: block;
}

@media (max-width: 991px) {
  .portfolio-page-img.details-three .portfolio-page-img-data img {
    height: 220px;
  }
}


.client-detail h4 {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.client-detail-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.client-detail .tag {
  display: inline-block;
  padding: 6px 10px;
  border: 1px solid #eee;
  border-radius: 999px;
  font-size: 14px;
  line-height: 1;
  white-space: nowrap;
}

.portfolio-page-videos .video-thumb {
  position: relative;
}

.portfolio-page-videos .play-icon {
  position: absolute;
  inset: 0;
  background: url('/assets/template/img/icons/play.svg') center no-repeat;
  background-size: 48px;
  pointer-events: none;
}

/* Container da imagem do case */
.related-cases .img-team {
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 12px;
  /* mantém padrão visual */
}

/* Imagem em si */
.related-cases .img-team img {
  object-fit: cover;
  /* garante corte correto */
  object-position: center;
  display: block;
}

.related-cases .team-flex:hover img {
  transform: scale(1.05);
}

.related-cases img {
  transition: transform .4s ease;
}

@media (max-width: 768px) {
  .related-cases .img-team {
    width: 100%;
    max-width: 280px;
    margin: 0 auto;
  }
}

.related-cases .team-flex {
  flex-direction: column;
}

.related-cases .team-one p {
  width: 100%;
}

.related-cases .team-one h4 {
  margin-top: 16px;
}

.related-cases .team-one p {
  margin-top: 16px;
  text-align: justify;
}

.related-cases .team-one a {
  margin-top: 16px;
}

.is-invalid {
  border-color: #dc3545 !important;
}


.box .message input,
.box .message select,
.box .message textarea {
  width: 100% !important;
  display: block;
  box-sizing: border-box;
}

.box .message .row {
  display: flex;
  gap: 16px;
}

.box .message .row>[class*="col-"] {
  flex: 1;
  max-width: 100%;
  margin-bottom: 3%;
}

.content-form input[type="email"],
.message input[type="email"] {
  width: 100%;
  display: block;
}

.content-form input[type="email"] {
  width: 100% !important;
}



.contato360 .heading p {
  text-transform: none;
  border-bottom: 3px solid #1b75ba;
  line-height: 21px;
  margin-bottom: 19px;
  text-align: justify;
}

form.content-form input[type="email"],
.formSelect {
  width: 100%;
  border-radius: 52px;
  height: 60px;
  padding-left: 30px;
  margin-bottom: 20px;
  border: 1px solid #c1c1c1;
  color: #555;
  outline: none;
}

form.content-form textarea {
  resize: none;
  height: 250px;
}


form.message input[type="email"] {
  outline: none;
  width: 100%;
  border: 1px solid #7a7a7a;
  height: 80px;
  padding-left: 20px;
  background-color: transparent;
  color: white;
  margin-bottom: 15px;
}

/* Só para o carrossel de SERVIÇOS no local/service */
.service-lovcal-img {
  width: 100%;
  height: 165px;
  object-fit: cover;
}

.sec-btn {
  margin-top: 3.5%;
}


/* =========================
   FIX POPUP FORM MOBILE
   Não afeta o resto do site
========================= */
@media (max-width: 576px) {
  .box-form-360 form.message .row {
    display: block;
    /* garante empilhamento */
  }

  .box-form-360 form.message .row>[class*="col-"],
  .box-form-360 form.message .row>.col-lg-6 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  .box-form-360 form.message input[type="text"],
  .box-form-360 form.message textarea,
  .box-form-360 form.message .nice-select {
    width: 100% !important;
    box-sizing: border-box;
  }

  /* espaçamento entre campos */
  .box-form-360 form.message .row>div {
    margin-bottom: 12px;
  }
}

.box-form-360 form.message input,
.box-form-360 form.message select,
.box-form-360 form.message textarea {
  font-size: 12px;
}

.service-icon {
  display: flex;
  justify-content: center;
}

.service-icon img {
  width: 40%;
  height: 40%;
  object-fit: contain;
  display: block;
}



.marquee360 .marquee_text {
  font-size: 5rem;
  font-weight: bold;
  line-height: 5rem;

  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.marquee360 .marquee_text .portfolio-img {
  display: table-caption;
  padding: 20px;
}

.js-marquee {
  display: flex;
  margin-right: 0 !important;
}

.marquee360 .marquee_text .portfolio-img img {
  width: 500px;
  height: 400px;
  object-fit: cover;
}

.marquee360 .marquee_text .portfolio-img h3 a {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 20px;
}

.marquee360 .marquee_text .portfolio-img a {
  font-weight: 500;
  font-size: 12px;
}

.marquee360 .marquee_text .portfolio-img span {
  font-size: 12px;
  display: block;
  margin-top: -30px;
}

.view-btn-360 {
  text-align: end;
  position: absolute;
  right: 12%;
  bottom: 6%;
}

.view-btn-360 h5 {
  color: white;
  font-weight: 600;
}

.view-btn-360 i {
  margin-left: 15px;
  color: black;
  background-color: white;
  width: 30px;
  line-height: 0;
  height: 30px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
  border-radius: 26px;
  font-size: 16px;
}