.hero-art { overflow: hidden; }
.sun-disc { display: none; }

.church-emblem { height: auto; aspect-ratio: 1 / 1; max-width: 420px; background: #0c3c5f; }
.church-emblem img { object-fit: contain !important; object-position: center; }

.brand-mark { display: flex; align-items: center; justify-content: center; width: 28px; height: 32px; }
.brand-mark img { width: 28px; height: 30px; object-fit: contain; }
.institution-logo { width: min(214px, 30vw); height: 58px; object-fit: contain; object-position: left center; }
.project-placeholder { height: 198px; display: grid; place-items: center; background: linear-gradient(135deg, #eaf0f1, #dce9ed); color: #6b8490; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; }
.project-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.project-card > img { height: 250px; object-fit: contain; background: #0f5686; }

.foundation-symbol { position: relative; display: inline-flex; width: 34px; height: 38px; align-items: center; justify-content: center; }
.foundation-symbol img { width: 34px; height: 38px; object-fit: contain; }
.foundation-symbol .pax-label { position: absolute; top: 7px; left: 20px; color: var(--navy); font-size: 4px; font-weight: 700; letter-spacing: .02em; transform: rotate(8deg); }
.map-link { display: inline-block; margin-top: 7px; color: var(--blue); font-size: 12px; font-weight: 700; }
.whatsapp-link { display: inline-flex; align-items: center; gap: 7px; color: var(--blue); }
.whatsapp-link svg { width: 18px; height: 18px; fill: #25d366; flex: 0 0 auto; }

.page-watermark {
  position: fixed;
  z-index: 2;
  top: 82px;
  right: -18px;
  bottom: 0;
  width: clamp(220px, 27vw, 320px);
  pointer-events: none;
  background-image: url("public/images/simbolos-fonte.png"), url("public/images/simbolos-fonte-azul.png");
  background-repeat: repeat-y, repeat-y;
  background-position: right top, right 430px;
  background-size: clamp(170px, 20vw, 230px) auto, clamp(170px, 20vw, 230px) auto;
  opacity: .20;
  mix-blend-mode: multiply;
  filter: saturate(1.05) contrast(1.04);
}

.hero-watermark { display: none; }

@media (max-width: 850px) {
  .church-emblem { width: min(100%, 360px); height: auto; }
  .project-grid { grid-template-columns: 1fr; }
  .page-watermark { top: 72px; right: -20px; width: 29vw; min-width: 175px; max-width: 245px; background-position: right top, right 345px; background-size: min(22vw, 185px) auto, min(22vw, 185px) auto; opacity: .18; }
}

@media (max-width: 480px) {
  .institution-logo { width: min(190px, 52vw); height: 48px; }
  .brand-mark { width: 24px; height: 28px; }
  .brand-mark img { width: 24px; height: 26px; }
  .hero-note { gap: 9px; }
  .foundation-symbol { width: 28px; height: 32px; }
  .foundation-symbol img { width: 28px; height: 32px; }
  .foundation-symbol .pax-label { top: 6px; left: 16px; font-size: 3.5px; }
  .page-watermark { right: -14px; width: 34vw; min-width: 135px; max-width: 200px; background-position: right top, right 300px; background-size: min(28vw, 155px) auto, min(28vw, 155px) auto; opacity: .16; }
}
