/* Focused visual refinement shared by every language and page type. */
img { box-shadow: none !important; filter: none !important; }
.b7-hero-slide, .b7-about-image, .b7-why__media, .b7-gallery__item,
.b7-brush-photo,
.welcome-image, .ds-figure, .ts-faq__video, .ts-gallery__item,
.ts-article__hero, .ts-guide-image { box-shadow: none !important; filter: none !important; }

/* Cards keep a quiet border while the photography remains grounded. */
.ts-tour-card, .tour-card, .mtl-tour-card, .ts-article-card,
.ds-card, .destination-card, .big7-accommodation__card,
.b7-t-card, .b7-tc-card, .ts-related-link-card {
  box-shadow: none !important;
  border: 1px solid #e8ded3;
}
.ts-tour-card:hover, .tour-card:hover, .mtl-tour-card:hover,
.ts-article-card:hover, .ds-card:hover, .destination-card:hover,
.big7-accommodation__card:hover, .b7-t-card:hover,
.b7-tc-card:hover, .ts-related-link-card:hover {
  box-shadow: 0 10px 28px rgba(52,36,28,.07) !important;
  border-color: #ccb89e;
}

.ts-card-grid, .ds-grid, .big7-accommodation__grid { align-items: stretch; }
.ts-tour-card, .tour-card, .mtl-tour-card, .ts-article-card,
.ds-card, .big7-accommodation__card { height: 100%; }
.ts-tour-card__media, .tour-photo, .mtl-tour-card__media {
  aspect-ratio: 4 / 3;
}
.ts-tour-card__body, .tour-body, .mtl-tour-card__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 27px 27px 29px;
}
.ts-tour-card__body p, .tour-body p, .mtl-tour-card__body p {
  margin-bottom: 22px;
}
.ts-tour-card__link, .tour-view, .mtl-tour-card__go { margin-top: auto; }
.ts-article-card__media { aspect-ratio: 1.55; }
.ts-article-card__body { padding: 25px 26px 28px; }
.ds-card { display: flex; flex-direction: column; }
.ds-card__image { aspect-ratio: 1.3; }
.ds-card__body { display: flex; flex-direction: column; flex: 1; padding: 28px 29px 31px; }
.ds-card p { min-height: 0; }
.ds-card__link { margin-top: auto; width: fit-content; }
.big7-accommodation__card img, .big7-accommodation__no-photo { height: 195px; }
.big7-accommodation__meta { min-height: 76px; padding: 17px 18px 19px; }
.b7-t-card { height: 380px; border-radius: 20px; }
.b7-tc-card { height: 365px; border-radius: 20px !important; }
.b7-tc-grid .b7-tc-card { height: 360px !important; }
.b7-t-card-body, .b7-tc-content { padding: 24px !important; }

.b7-culture { background: #faf7f1; }
.b7-culture__grid { display: grid; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); gap: clamp(34px,6vw,90px); align-items: center; }
.b7-culture__image { width: 100%; height: 420px; object-fit: cover; border-radius: 20px; }
.b7-culture__copy { max-width: 610px; }
.b7-culture__copy h2 { margin: 8px 0 18px; color: #3d2619; font-family: Montserrat, sans-serif; font-size: clamp(29px,3vw,43px); line-height: 1.12; letter-spacing: -.04em; }
.b7-culture__copy p { margin: 0 0 20px; color: #53483f; font-size: 16px; line-height: 1.75; }
.b7-culture__links { display: flex; gap: 12px; flex-wrap: wrap; }
.b7-culture__links a { display: inline-flex; align-items: center; min-height: 45px; padding: 9px 17px; border: 1px solid #684936; border-radius: 100px; color: #533b2d; font-size: 12px; font-weight: 800; }
.b7-culture__links a:first-child { background: #684936; color: white; }
.b7-culture__links a:hover { transform: translateY(-2px); }

@media (max-width: 1024px) {
  .b7-t-card { height: 370px; }
  .b7-tc-card { height: 350px; }
}
@media (max-width: 768px) {
  .b7-culture__grid { grid-template-columns: 1fr; }
  .b7-culture__image { height: 340px; }
  .ts-tour-card__media, .tour-photo, .mtl-tour-card__media { aspect-ratio: 1.55; }
  .big7-accommodation__card img, .big7-accommodation__no-photo { height: 175px; }
  .b7-t-card { height: 350px; }
}
@media (max-width: 560px) {
  .ts-tour-card__media, .tour-photo, .mtl-tour-card__media { aspect-ratio: 1.45; }
  .ts-tour-card__body, .tour-body, .mtl-tour-card__body { padding: 23px 22px 26px; }
  .ts-article-card__media { aspect-ratio: 1.6; }
  .ds-card__image { aspect-ratio: 1.5; }
  .b7-t-card { height: 320px; }
  .b7-tc-card { height: 290px; }
  .b7-tc-grid .b7-tc-card { height: 295px !important; }
  .b7-culture__image { height: 280px; }
  .big7-accommodation__card img, .big7-accommodation__no-photo { height: 100%; min-height: 112px; }
}
