/* Tourism vertical adjustments layered onto the real-estate page system. */
.tourism-page .re-social-films {
  grid-template-columns:minmax(0,1fr);
  justify-content:start;
  width:100%;
  max-width:none;
}

.tourism-page .re-social-work {
  grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);
  gap:42px;
}

.tourism-page .re-reel-player img {
  aspect-ratio:16/9;
  object-position:center;
}

.tourism-page .re-social-intro .re-work-attribution {
  margin-top:28px;
}

.tourism-case-cta {
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  margin-top:22px;
  color:#20221f;
  font-size:14px;
  font-weight:650;
  line-height:1.4;
  text-decoration:none;
  border-bottom:1px solid #8f9489;
}

.tourism-case-cta:hover {
  color:#596151;
  border-color:#596151;
}

.tourism-case-cta svg {
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.7;
}

.tourism-page .tourism-formats .re-bts-layout {
  grid-template-columns:minmax(300px,420px) minmax(0,1fr);
  gap:24px 72px;
}

.tourism-page .tourism-formats .re-bts-media {
  max-width:420px;
}

.tourism-page .tourism-formats .re-bts-player img {
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center 57%;
}

.tourism-page .tourism-formats .re-bts-player video {
  object-fit:cover;
  object-position:center 57%;
}

.tourism-page .tourism-formats .re-bts-description {
  max-width:480px;
}

.tourism-page #testimonials .testimonials-label {
  font-size:11px;
  font-weight:600;
  line-height:1.5;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.tourism-page .re-offer-row .tourism-offer-fit {
  margin-top:14px;
  max-width:530px;
  color:#60645b;
  font-size:14px;
  line-height:1.6;
  letter-spacing:0;
}

.tourism-page .tourism-offer-fit strong {
  color:#30372e;
}

.tourism-page .tourism-faq-actions {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 28px;
  margin-top:24px;
}

.tourism-page .tourism-faq-actions .re-campaign-link {
  margin-top:0;
}

.tourism-page .tourism-faq-whatsapp {
  color:#60645b;
}

@media (max-width:1160px) {
  .tourism-page #testimonials > .re-project-container {
    padding-inline:28px;
  }

  .tourism-page .re-social-work {
    gap:40px;
  }
}

@media (max-width:1000px) {
  .tourism-page .tourism-formats .re-bts-layout {
    grid-template-columns:minmax(280px,360px) minmax(0,1fr);
    column-gap:40px;
  }
}

@media (max-width:900px) {
  .tourism-page .re-faq-layout {
    grid-template-columns:1fr;
    gap:30px;
  }
}

@media (max-width:800px) {
  .tourism-page .tourism-formats .re-bts-layout {
    grid-template-columns:1fr;
  }

  .tourism-page .tourism-formats .re-bts-media {
    width:min(100%,420px);
  }
}

@media (max-width:700px) {
  .tourism-page #testimonials > .re-project-container {
    padding-inline:24px;
  }

  .tourism-page .re-social-work {
    display:block;
  }

  .tourism-page .re-social-film-group {
    margin-top:34px;
  }

  .tourism-page .re-social-films {
    grid-template-columns:minmax(0,1fr);
    grid-auto-flow:row;
    grid-auto-columns:auto;
    width:100%;
    max-width:none;
    padding-bottom:0;
    overflow:visible;
  }

}

@media (max-width:600px) {
  .tourism-page .re-intro h1 {
    font-size:clamp(34px,10vw,42px);
  }

  .tourism-page .re-intro h1 span {
    white-space:normal;
  }

}


.tourism-photo-card {
  position:relative;
  display:block;
  overflow:hidden;
  border:0;
  border-radius:0;
  background:#d7d9d2;
}

.tourism-photo-card::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 60%,rgba(9,17,18,.48));
  pointer-events:none;
}

.tourism-photo-label {
  position:absolute;
  z-index:1;
  right:18px;
  bottom:16px;
  left:18px;
  color:#fff;
  font-size:10px;
  font-weight:650;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.tourism-page .tourism-photo-card img {
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  object-position:center;
  transition:transform .7s cubic-bezier(.2,.7,.2,1);
}

.tourism-page .tourism-photo-card:hover img {
  transform:scale(1.025);
}
