.intro {
  display: grid;
  gap: 10px;
}
.intro h2 {
  margin-bottom: 30px;
}
.intro p:not(.eyebrow) {
  margin-bottom: 18px;
  color: #655c53;
}
.intro .text-link {
  margin-top: 12px;
}
.environments {
  background: #eee9df;
}
.section-heading {
  display: flex;
  flex-direction: column;
  gap: 25px;
  margin-bottom: 55px;
}
.section-heading > p {
  font-size: 13px;
  color: #655c53;
}
.room {
  display: grid;
  gap: 30px;
  margin-bottom: 65px;
}
.room:last-child {
  margin-bottom: 0;
}
.room figure img {
  height: 340px;
}
.room figcaption {
  font-size: 9px;
  color: #655c53;
  margin-top: 8px;
}
.room-copy .number {
  display: block;
  color: var(--wood);
  font-size: 11px;
  margin-bottom: 20px;
}
.room-copy h3 {
  font-size: 44px;
  margin-bottom: 14px;
}
.room-copy p {
  margin-bottom: 15px;
}
.room-copy .muted {
  font-size: 14px;
  max-width: 320px;
}
.detail-grid {
  display: grid;
  gap: 45px;
}
.detail-grid img {
  height: 350px;
}
.detail-grid figcaption {
  padding-top: 23px;
}
.detail-grid figcaption > span {
  font-size: 10px;
  letter-spacing: 0.14em;
}
.detail-grid h3 {
  margin: 14px 0;
}
.detail-grid p {
  font-size: 14px;
}
.detail-text {
  padding: 35px 0;
}
.detail-text h3 {
  font-size: 43px;
  margin-bottom: 25px;
}
.detail-text .caption {
  margin-top: 35px;
  font-size: 12px;
  max-width: 370px;
}
.line-art {
  font-family: Georgia;
  font-size: 120px;
  color: var(--sand);
  line-height: 1;
  display: block;
  margin-bottom: 35px;
}
.process {
  border-top: 1px solid var(--beige);
}
.steps {
  display: grid;
  gap: 32px;
  margin-top: 48px;
}
.steps > div {
  border-top: 1px solid var(--sand);
  padding-top: 20px;
}
.steps span {
  font-size: 11px;
  color: var(--wood);
}
.steps h3 {
  font-size: 25px;
  margin: 20px 0 15px;
}
.steps p {
  font-size: 13px;
  color: #655c53;
  max-width: 300px;
}
.contact {
  background: var(--beige);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 85px;
  padding-bottom: 85px;
}
.contact h2 {
  font-size: clamp(48px, 7vw, 90px);
}
.contact-copy > p:not(.eyebrow) {
  font-size: 14px;
  margin: 28px 0;
}
.contact-phone {
  font-size: 12px;
  margin-top: 16px;
  color: #655c53;
}
footer {
  display: flex;
  flex-direction: column;
  gap: 25px;
  padding: 40px 6vw 110px;
}
footer p {
  font-size: 12px;
}
footer small {
  font-size: 10px;
  color: #655c53;
  max-width: 300px;
}
.mobile-contact {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 15;
  background: var(--wood);
  color: white;
  padding: 18px 20px;
  display: flex;
  justify-content: space-between;
  font-size: 12px;
}
.mobile-contact span {
  font-size: 18px;
}
.reveal {
  transition:
    opacity 0.55s,
    transform 0.55s;
}
.reveal.pending {
  opacity: 0;
  transform: translateY(16px);
}
footer a[href='https://www.tintimarketing.com.br'] {
  color: var(--wood);
}

.contact-location {
  width: 100%;
  max-width: 600px;
  margin-top: 24px;
}
.contact-location address {
  font-style: normal;
  font-size: 14px;
  color: #655c53;
}
.contact-location .text-link {
  margin: 8px 0 20px;
}
.contact-location iframe {
  display: block;
  width: 100%;
  height: 300px;
  border: 0;
}

.contact-copy {
  width: 100%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.contact-location {
  min-width: 0;
}
