/* Por Onde Andei V3.8.2 — página inicial fotográfica */
.home-v382 { background: var(--paper-light); }

.home382-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(390px,.82fr) minmax(0,1.18fr);
  min-height: min(820px,100svh);
  padding: 110px max(4.4vw,28px) 48px;
  gap: clamp(34px,4.5vw,74px);
  color: #fff;
  background:
    radial-gradient(circle at 18% 12%,rgba(99,132,108,.24),transparent 38%),
    var(--forest-950);
}
.home382-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  padding: 24px 0 20px;
}
.home382-copy .home306-kicker { margin-bottom: 18px; }
.home382-copy h1 {
  max-width: 690px;
  margin: 0;
  font: 500 clamp(3.8rem,6.4vw,7rem)/.88 var(--serif);
  letter-spacing: -.06em;
}
.home382-copy h1 em { color: rgba(255,255,255,.65); font-weight: 400; }
.home382-copy .home306-lead {
  max-width: 590px;
  margin-top: 25px;
  font-size: clamp(.96rem,1.25vw,1.15rem);
  line-height: 1.62;
}
.home382-copy .home306-actions { margin-top: 26px; }
.home382-copy .home306-search { width: min(540px,100%); margin-top: 32px; }
.home382-continue {
  display: flex;
  max-width: 540px;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  margin-top: 34px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.15);
  color: rgba(255,255,255,.45);
  font-size: .65rem;
  line-height: 1.5;
}
.home382-continue a { color: #fff; font-weight: 800; text-decoration: none; white-space: nowrap; }

.home382-showcase {
  display: grid;
  min-width: 0;
  min-height: 620px;
  grid-template-columns: minmax(0,1.45fr) minmax(210px,.72fr);
  grid-template-rows: 1fr 1fr;
  gap: 12px;
}
.home382-visual-card {
  position: relative;
  display: block;
  min-width: 0;
  overflow: hidden;
  color: #fff;
  background: #26352b;
  text-decoration: none;
}
.home382-visual-card::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg,rgba(4,10,6,.86),rgba(4,10,6,.03) 68%);
  content: "";
  transition: background .25s;
}
.home382-visual-card:hover::after { background: linear-gradient(0deg,rgba(4,10,6,.93),rgba(4,10,6,.06) 72%); }
.home382-visual-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.2,.7,.2,1);
}
.home382-visual-card:hover img { transform: scale(1.035); }
.home382-visual-card > span {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  padding: clamp(22px,3vw,38px);
}
.home382-visual-card small,
.home382-visual-card strong,
.home382-visual-card em,
.home382-visual-card b { display: block; }
.home382-visual-card small {
  margin-bottom: 9px;
  color: rgba(255,255,255,.62);
  font-size: .59rem;
  font-style: normal;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.home382-visual-card strong {
  max-width: 720px;
  font: 500 clamp(2rem,3.5vw,4.5rem)/.96 var(--serif);
  letter-spacing: -.045em;
}
.home382-visual-card em {
  margin-top: 10px;
  color: rgba(255,255,255,.62);
  font-size: .66rem;
  font-style: normal;
}
.home382-visual-card p {
  display: -webkit-box;
  overflow: hidden;
  max-width: 620px;
  margin: 15px 0 0;
  color: rgba(255,255,255,.7);
  font-size: .77rem;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.home382-visual-card b { margin-top: 18px; font-size: .65rem; }
.home382-visual-main { grid-row: 1 / 3; }
.home382-visual-small > span { padding: 22px; }
.home382-visual-small strong { font-size: clamp(1.45rem,2vw,2.2rem); }
.home382-visual-small em { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.home382-visual-small b { margin-top: 12px; }
.home382-visual-placeholder,
.home382-visual-card.is-empty { display: grid; height: 100%; place-items: center; color: rgba(255,255,255,.55); }
.home382-visual-card.is-empty > span { position: relative; align-self: end; }
.home382-showcase-loading { display: contents; }
.home382-showcase-loading span { min-height: 230px; background: linear-gradient(110deg,#213027 8%,#314339 18%,#213027 33%); background-size: 200% 100%; animation: home382-loading 1.4s linear infinite; }
.home382-showcase-loading span:first-child { grid-row: 1/3; }
@keyframes home382-loading { to { background-position-x: -200%; } }

/* Mostra mais conteúdo e reduz as zonas demasiado altas. */
.home-v382 .home306-stats > div { min-height: 142px; padding-top: 23px; padding-bottom: 22px; }
.home-v382 .home306-stats strong { margin-top: 35px; font-size: clamp(2.1rem,3.2vw,3.35rem); }
.home-v382 .home306-stats small { margin-top: 8px; }
.home-v382 .home306-section { padding: clamp(76px,8vw,112px) 0; }
.home-v382 .home306-section-heading { gap: 52px; margin-bottom: 48px; }
.home-v382 .home306-section-heading h2 { font-size: clamp(3rem,5.2vw,5.25rem); }
.home-v382 .home306-place-grid { gap: 48px 22px; }
.home-v382 .home306-place-card,
.home-v382 .home306-place-card-1,
.home-v382 .home306-place-card-5 { grid-column: span 4; }
.home-v382 .home306-place-image,
.home-v382 .home306-place-card-1 .home306-place-image,
.home-v382 .home306-place-card-5 .home306-place-image { height: clamp(320px,29vw,430px); }
.home-v382 .home306-place-card-1 h3,
.home-v382 .home306-place-card-5 h3,
.home-v382 .home306-place-copy h3 { font-size: clamp(2rem,2.8vw,3.1rem); }
.home-v382 .home306-place-copy > div {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.home-v382 .home306-trips { padding: clamp(78px,8vw,116px) 0; }
.home-v382 .home306-trip-card,
.home-v382 .home306-trip-card.is-featured:first-child { grid-column: span 4; }
.home-v382 .home306-trip-image,
.home-v382 .home306-trip-card.is-featured:first-child .home306-trip-image { height: clamp(330px,29vw,430px); }
.home-v382 .home306-trip-card.is-featured:first-child h3,
.home-v382 .home306-trip-copy h3 { font-size: clamp(2.2rem,3.1vw,3.5rem); }
.home-v382 .home306-trip-copy > span {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.home-v382 .home306-map-section { min-height: 620px; }
.home-v382 .home306-map-copy { padding-top: 82px; padding-bottom: 82px; }
.home-v382 .home306-map-copy h2 { font-size: clamp(3rem,5vw,5rem); }
.home-v382 .home306-map-frame { min-height: 540px; }
.home-v382 .home306-about { min-height: 620px; }
.home-v382 .home306-about-copy { padding-top: 75px; padding-bottom: 75px; }
.home-v382 .home306-about-copy h2 { font-size: clamp(2.8rem,4.5vw,4.5rem); }

@media (max-width: 1120px) {
  .home382-hero { grid-template-columns: minmax(330px,.8fr) minmax(0,1.2fr); padding-top: 98px; gap: 30px; }
  .home382-showcase { min-height: 570px; grid-template-columns: 1.2fr .8fr; }
  .home-v382 .home306-place-card,
  .home-v382 .home306-place-card-1,
  .home-v382 .home306-place-card-5,
  .home-v382 .home306-trip-card,
  .home-v382 .home306-trip-card.is-featured:first-child { grid-column: span 6; }
}

@media (max-width: 820px) {
  .home382-hero {
    display: block;
    min-height: 0;
    padding: 112px 20px 28px;
  }
  .home382-copy { padding: 12px 0 38px; }
  .home382-copy h1 { max-width: 620px; font-size: clamp(3.7rem,13vw,6rem); }
  .home382-copy .home306-lead { max-width: 580px; }
  .home382-continue { display: none; }
  .home382-showcase { min-height: 610px; grid-template-columns: 1.2fr .8fr; }
  .home382-visual-card strong { font-size: clamp(1.6rem,5vw,3.1rem); }
  .home382-visual-small strong { font-size: clamp(1.2rem,3.8vw,1.8rem); }
}

@media (max-width: 620px) {
  .home382-hero { padding-top: 96px; }
  .home382-copy h1 { font-size: clamp(3.55rem,17vw,5.2rem); }
  .home382-copy .home306-actions { align-items: flex-start; flex-direction: column; gap: 15px; }
  .home382-showcase {
    min-height: 0;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 430px 230px;
    gap: 8px;
  }
  .home382-visual-main { grid-column: 1/3; grid-row: 1; }
  .home382-visual-small { grid-row: 2; }
  .home382-visual-card > span { padding: 20px; }
  .home382-visual-main strong { font-size: 2.6rem; }
  .home382-visual-main p { display: none; }
  .home382-visual-small strong { font-size: 1.35rem; }
  .home382-visual-small em,
  .home382-visual-small b { display: none; }
  .home-v382 .home306-stats { grid-template-columns: repeat(2,1fr); }
  .home-v382 .home306-stats > div { min-height: 125px; }
  .home-v382 .home306-section { width: calc(100% - 32px); padding: 72px 0; }
  .home-v382 .home306-section-heading h2 { font-size: clamp(2.85rem,13vw,4.2rem); }
  .home-v382 .home306-place-card,
  .home-v382 .home306-place-card-1,
  .home-v382 .home306-place-card-5,
  .home-v382 .home306-trip-card,
  .home-v382 .home306-trip-card.is-featured:first-child { grid-column: auto; }
  .home-v382 .home306-place-image,
  .home-v382 .home306-place-card-1 .home306-place-image,
  .home-v382 .home306-place-card-5 .home306-place-image,
  .home-v382 .home306-trip-image,
  .home-v382 .home306-trip-card.is-featured:first-child .home306-trip-image { height: 360px; }
}
