/* V30 — projetos em imagem e institucional mais equilibrado */
.v28-project-slot .projects-section .section-head { display: none !important; }
.v28-project-slot .project-image { position: relative; isolation: isolate; height: 330px !important; }
.v28-project-slot .project-image img { width: 100%; height: 100% !important; object-fit: cover; }
.v30-project-image-title {
  position: absolute; z-index: 2; inset: auto 0 0; color: #fff;
  padding: 68px 24px 25px; background: linear-gradient(0deg, rgba(7,26,45,.92), rgba(7,26,45,.68) 57%, transparent);
  pointer-events: none;
}
.v30-project-image-title > span { font-size: 10px; letter-spacing: .14em; font-weight: 800; color: #e5eef5; }
.v30-project-image-title h2 { font-size: clamp(25px,2.5vw,35px); line-height: 1.14; letter-spacing: -.045em; margin: 9px 0 3px; color: #fff; }
.v30-project-image-title p { font-size: 17px; line-height: 1.25; margin: 0; font-weight: 600; color: #fff; }
.v28-project-slot .project-image > span { top: 10px; bottom: auto; left: auto; right: 10px; padding: 5px 8px; font-size: 9px; z-index: 3; }
.v28-project-slot .project-info h3 { font-size: 22px; line-height: 1.27; margin: 9px 0 12px; }
.v28-project-slot .project-info p { font-size: 13px !important; line-height: 1.65 !important; margin: 0 0 12px; }
.v28-project-slot .project-info .important { margin: 15px 0; }

/* Institucional: fundo azul integral já mantido da V29, texto com corpo de leitura padrão e imagens maiores. */
.v28-brand-band .group-feature { grid-template-columns: minmax(0, 1.2fr) minmax(340px, .95fr) !important; column-gap: 48px !important; align-items: center; }
.v28-brand-band .group-feature h3 { font-size: clamp(25px,2.2vw,31px); }
.v28-brand-band .group-feature > p { font-size: 13px !important; line-height: 1.7 !important; margin-bottom: 13px !important; }
.v28-brand-band .group-feature .group-gallery { grid-template-rows: 205px 132px !important; }
.v28-brand-band .group-feature .group-brand-logos img { height: 60px !important; }
.v28-brand-band .group-feature > .group-pending { font-size: 10px; line-height: 1.55; }

/* Disponibilidade: base clara, cartões azul-marinho e indicadores contrastantes. */
.availability-preview { background: #f2f6f8 !important; color: #173655 !important; border: 1px solid #d6e3ec !important; box-shadow: 0 12px 30px #0b294017 !important; }
.availability-preview .availability-eyebrow { color: #173655 !important; }
.availability-preview .availability-categories > div { background: #193b5e !important; border: 1px solid #244b70 !important; }
.availability-preview .availability-categories span { color: #fff !important; }
.availability-preview .availability-categories i { color: #ff8991 !important; }
.availability-preview .availability-categories strong { color: #ecf3f8 !important; }
.availability-preview .availability-categories strong b { color: #fff !important; }
.availability-preview > small { color: #52687c !important; }

@media (max-width: 900px) {
  .v28-brand-band .group-feature { grid-template-columns: 1fr !important; }
  .v28-brand-band .group-feature .group-gallery { grid-column: 1; grid-row: auto; grid-template-rows: 250px 140px !important; }
}
@media (max-width: 760px) {
  .v28-project-slot .project-image { height: 295px !important; }
  .v30-project-image-title { padding: 65px 18px 19px; }
  .v30-project-image-title h2 { font-size: 27px; }
  .v30-project-image-title p { font-size: 16px; }
  .v28-brand-band .group-feature > p { font-size: 13px !important; }
  .v28-brand-band .group-feature .group-gallery { grid-template-rows: 210px 125px !important; }
}
