/* Componentes da atualização de 11/2026 (Nossa História, Capela, destaques da home).
   Usa as cores e fontes do tema (style.css): destaque #fc4c4c, texto #303443. */

/* ---------- Cabeçalho das páginas de conteúdo ---------- */
.lnr-pagina { padding: 60px 0 90px; }
.lnr-pagina-topo { text-align: center; max-width: 760px; margin: 0 auto 50px; }
.lnr-pagina-topo h1 { font-size: 44px; color: #303443; margin-bottom: 15px; }
.lnr-pagina-topo .lnr-subtitulo { font-size: 20px; color: #fc4c4c; margin-bottom: 15px; }
.lnr-pagina-topo p { font-size: 18px; line-height: 1.7; }
.lnr-capa { margin: 0 auto 50px; max-width: 1100px; }
.lnr-capa img { width: 100%; height: auto; border-radius: 6px; display: block; }

/* ---------- Texto corrido ---------- */
.lnr-texto { max-width: 760px; margin: 0 auto; font-size: 17px; line-height: 1.8; }
.lnr-texto p { margin-bottom: 18px; }
.lnr-texto h3 { font-size: 26px; color: #303443; margin: 40px 0 15px; }
.lnr-texto a { color: #fc4c4c; text-decoration: underline; }
.lnr-texto strong { color: #303443; }

/* Linha do tempo (Nossa História): os <h3> do texto viram marcos */
.lnr-linha-do-tempo { border-left: 3px solid #fc4c4c; padding-left: 32px; }
.lnr-linha-do-tempo h3 { position: relative; }
.lnr-linha-do-tempo h3::before {
  content: ""; position: absolute; left: -42px; top: 8px;
  width: 17px; height: 17px; border-radius: 50%;
  background: #fff; border: 3px solid #fc4c4c;
}
.lnr-linha-do-tempo h3:first-child { margin-top: 0; }

/* ---------- Seções e galerias ---------- */
.lnr-secao { margin-top: 70px; }
.lnr-secao > h2 { text-align: center; font-size: 34px; color: #303443; margin-bottom: 10px; }
.lnr-secao > .lnr-secao-intro { text-align: center; max-width: 680px; margin: 0 auto 30px; }

.lnr-galeria { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; }
.lnr-galeria-item { margin: 0; }
.lnr-galeria-item a { display: block; overflow: hidden; border-radius: 6px; background: #ebebeb; }
.lnr-galeria-item img { width: 100%; height: 220px; object-fit: cover; display: block; transition: transform .4s; }
.lnr-galeria-item a:hover img, .lnr-galeria-item a:focus img { transform: scale(1.04); }
.lnr-galeria-item figcaption { font-size: 14px; line-height: 1.4; margin-top: 8px; color: #585858; }
.lnr-galeria-cronologica { counter-reset: etapa; }
.lnr-galeria-cronologica .lnr-galeria-item figcaption::before {
  counter-increment: etapa; content: counter(etapa) ". "; font-weight: 700; color: #fc4c4c;
}

/* ---------- Destaques da página inicial ---------- */
.lnr-destaques { padding: 90px 0; }
.lnr-destaques-grade { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin-top: 40px; }
.lnr-destaque { background: #fff; border: 1px solid #ebebeb; border-radius: 6px; padding: 30px 20px; text-align: center; }
.lnr-destaque strong { display: block; font-family: "Futura PT"; font-size: 30px; color: #fc4c4c; line-height: 1.2; margin-bottom: 8px; }
.lnr-destaque span { font-size: 16px; color: #303443; }
.lnr-perfis { list-style: none; padding: 0; margin: 30px 0 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.lnr-perfis li { border: 1px solid #fc4c4c; color: #303443; border-radius: 30px; padding: 6px 18px; font-size: 15px; }

.lnr-bloco { padding: 90px 0; }
.lnr-bloco-claro { background: #f3f8fc; }
.lnr-bloco .row { align-items: center; }
.lnr-bloco img { width: 100%; height: auto; border-radius: 6px; display: block; }
.lnr-bloco h2 { font-size: 38px; color: #303443; margin-bottom: 10px; }
.lnr-bloco .lnr-subtitulo { color: #fc4c4c; font-size: 18px; margin-bottom: 15px; }
.lnr-bloco p { font-size: 17px; line-height: 1.8; }
.lnr-bloco .theme-btn { margin-top: 15px; }

/* Tarifas */
.lnr-tarifas { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; margin: 30px auto 0; }
.lnr-tarifa { background: #fff; border: 1px solid #ebebeb; border-radius: 6px; padding: 20px 30px; text-align: center; min-width: 240px; }
.lnr-tarifa span { display: block; font-size: 15px; color: #585858; }
.lnr-tarifa strong { display: block; font-family: "Futura PT"; font-size: 30px; color: #303443; }

/* Página de acomodação: lista de informações do quarto */
.lnr-info-quarto { list-style: none; padding: 0; margin: 0; }
.lnr-info-quarto li { padding: 10px 0; border-bottom: 1px solid #ebebeb; font-size: 16px; }

@media (max-width: 991px) {
  .lnr-destaques-grade { grid-template-columns: repeat(2, 1fr); }
  .lnr-bloco .col-lg-6 + .col-lg-6 { margin-top: 30px; }
}
@media (max-width: 575px) {
  .lnr-pagina { padding: 30px 0 60px; }
  .lnr-pagina-topo h1 { font-size: 32px; }
  .lnr-bloco, .lnr-destaques { padding: 60px 0; }
  .lnr-bloco h2, .lnr-secao > h2 { font-size: 28px; }
  .lnr-destaques-grade { grid-template-columns: 1fr 1fr; gap: 12px; }
  .lnr-destaque { padding: 20px 10px; }
  .lnr-destaque strong { font-size: 24px; }
  .lnr-linha-do-tempo { padding-left: 22px; }
  .lnr-linha-do-tempo h3::before { left: -32px; }
  .lnr-galeria { grid-template-columns: 1fr 1fr; gap: 10px; }
  .lnr-galeria-item img { height: 140px; }
}

/* ---------- Rodapé: colunas proporcionais ao conteúdo ---------- */
/* o tema limita o título a 180px e recua as colunas de links/contato em 70-95px */
.wpo-site-footer .about-widget .logo { max-width: none; }
.wpo-site-footer .about-widget p { max-width: 380px; }
.wpo-site-footer .link-widget,
.wpo-site-footer .link-widget.s1,
.wpo-site-footer .wpo-service-link-widget { padding-left: 0; }
@media (max-width: 991px) {
  .wpo-site-footer .wpo-upper-footer .col { margin-bottom: 30px; }
}
