/* Home — seções. Tokens em base/tokens.css */

.ap-section__head { margin-bottom: var(--ap-space-7); }
.ap-container--narrow { max-width: calc(50rem + 2 * var(--ap-gutter)); }

/* Hero */
.ap-hero {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: min(100svh, 56rem);
  color: var(--ap-creme-natural);
  background: var(--ap-verde-araucaria);
  overflow: hidden;
}
.ap-hero__media,
.ap-hero__scrim { position: absolute; inset: 0; }
.ap-hero__img { width: 100%; height: 100%; object-fit: cover; }
.ap-hero__img--mobile { display: none; }
.ap-hero__placeholder {
  display: grid;
  place-items: end start;
  width: 100%;
  height: 100%;
  padding: var(--ap-gutter);
  background: linear-gradient(160deg, var(--ap-verde-floresta), var(--ap-verde-araucaria) 70%);
}
.ap-hero__placeholder .ap-ph__label {
  font-size: var(--ap-fs-small);
  letter-spacing: var(--ap-ls-eyebrow);
  text-transform: uppercase;
  color: var(--ap-areia-serrana);
}
.ap-hero__scrim { background: var(--ap-scrim); }
.ap-hero__content {
  position: relative;
  padding-block: calc(var(--ap-header-h) + var(--ap-space-8)) var(--ap-space-9);
}
.ap-hero__eyebrow { color: var(--ap-areia-serrana); margin: 0 0 var(--ap-space-4); }
.ap-hero__title {
  max-width: 14ch;
  margin: 0 0 var(--ap-space-6);
  color: var(--ap-creme-natural);
}
@media (max-width: 47.9375rem) {
  .ap-hero__img--desktop:not(:only-child) { display: none; }
  .ap-hero__img--mobile { display: block; }
}

/* Conceito */
.ap-conceito__lead {
  max-width: 36rem;
  margin: var(--ap-space-5) auto var(--ap-space-8);
  font-family: var(--ap-font-display);
  font-size: var(--ap-fs-h3);
  line-height: 1.25;
  color: var(--ap-verde-floresta);
}
.ap-attrs {
  display: grid;
  gap: var(--ap-space-7) var(--ap-space-6);
  grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
}
.ap-attrs__rule {
  display: block;
  width: 2.5rem;
  height: 1px;
  margin: 0 auto var(--ap-space-4);
  background: var(--ap-verde-araucaria);
}
.ap-attrs__item h3 { margin: 0 0 var(--ap-space-2); }
.ap-attrs__item p { margin: 0; }

/* Acomodações */
.ap-cards {
  display: grid;
  gap: var(--ap-space-8) var(--ap-space-7);
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr));
}
.ap-card { display: flex; flex-direction: column; gap: var(--ap-space-5); }
.ap-card__media { width: 100%; }
.ap-card__body > * { margin-block: 0 var(--ap-space-3); }
.ap-card__sub {
  font-family: var(--ap-font-display);
  font-size: var(--ap-fs-h3);
  color: var(--ap-areia-serrana);
}
.ap-tags {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ap-space-2);
  margin: var(--ap-space-4) 0 var(--ap-space-5);
  padding: 0;
  list-style: none;
}
.ap-tags li {
  padding: .35rem .8rem;
  border: 1px solid rgb(240 233 207 / .4);
  font-size: var(--ap-fs-small);
  letter-spacing: .06em;
}

/* Experiências */
.ap-split {
  display: grid;
  gap: var(--ap-space-7);
  align-items: center;
}
.ap-split__text > * { margin-block: 0 var(--ap-space-5); }
@media (min-width: 48rem) {
  .ap-split { grid-template-columns: 1.1fr .9fr; gap: var(--ap-space-9); }
}

/* Galeria */
.ap-mosaic {
  display: grid;
  gap: var(--ap-space-3);
  grid-template-columns: repeat(2, 1fr);
  align-items: start;
}
@media (min-width: 64rem) {
  .ap-mosaic { grid-template-columns: repeat(4, 1fr); gap: var(--ap-space-4); }
  .ap-mosaic__item:nth-child(even) { margin-top: var(--ap-space-7); }
}
.ap-galeria__more { margin: var(--ap-space-8) 0 0; }

/* FAQ */
.ap-faq__item { border-bottom: 1px solid var(--ap-line); }
.ap-faq__item:first-child { border-top: 1px solid var(--ap-line); }
.ap-faq__item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--ap-space-4);
  padding-block: var(--ap-space-5);
  font-family: var(--ap-font-display);
  font-size: var(--ap-fs-h3);
  line-height: 1.2;
  color: var(--ap-verde-araucaria);
  cursor: pointer;
  list-style: none;
}
.ap-faq__item summary::-webkit-details-marker { display: none; }
.ap-faq__icon { width: 1.25rem; height: 1.25rem; flex: none; transition: transform var(--ap-dur) var(--ap-ease); }
.ap-faq__item[open] .ap-faq__icon { transform: rotate(45deg); }
.ap-faq__item p { margin: 0 0 var(--ap-space-5); max-width: 42rem; }

/* CTA */
.ap-cta h2 { margin: 0 0 var(--ap-space-4); }
.ap-cta p { max-width: 32rem; margin: 0 auto var(--ap-space-6); }

/* Localização */
.ap-localizacao { background: var(--ap-surface); }
.ap-localizacao__icon { width: 2rem; height: 2rem; margin: 0 auto var(--ap-space-3); color: var(--ap-verde-araucaria); }
.ap-localizacao h2 { margin: var(--ap-space-2) 0 var(--ap-space-4); }
.ap-localizacao p { max-width: 32rem; margin: 0 auto var(--ap-space-5); }

@media (prefers-reduced-motion: reduce) {
  .ap-faq__icon { transition: none; }
}

/* Placeholder floresta sobre fundo floresta: usa o verde araucária para aparecer */
.ap-bg-floresta .ap-ph--floresta { background: var(--ap-verde-araucaria); }
