.brand {
  width: 240px;
  min-width: 240px;
  height: 72px;
  gap: 0;
  background: url("/brand/sanctuary-logo-horizontal.webp") center / contain
    no-repeat;
}

.brand img,
.brand span {
  display: none !important;
}

.footer-brand {
  width: min(100%, 250px);
  height: 170px;
  margin-top: -34px;
  background: url("/brand/sanctuary-logo-stacked.webp") left center / contain
    no-repeat;
}

.footer-brand strong,
.footer-brand span {
  display: none !important;
}

/* Keep the single illuminated doorway in the right-side visual field. */
@media (max-width: 820px) {
  .hero-image {
    background-position: 82% center;
  }
}

@media (max-width: 540px) {
  .brand {
    width: 190px;
    min-width: 190px;
    height: 64px;
  }

  .footer-brand {
    margin-top: 0;
  }
}

.testimonials { position: relative; overflow: hidden; background: #0a131c; border-top: 1px solid var(--line); }
.testimonials::before { content: ""; position: absolute; width: 620px; height: 620px; right: -260px; top: -270px; border: 1px solid rgba(197, 138, 50, .11); border-radius: 50%; box-shadow: 0 0 0 70px rgba(197, 138, 50, .025), 0 0 0 140px rgba(45, 111, 159, .025); pointer-events: none; }
.testimonials-intro { position: relative; max-width: 830px; }
.testimonials-intro .lead { max-width: 760px; }
.testimonial-grid { position: relative; display: grid; grid-template-columns: repeat(12, 1fr); gap: 24px; margin-top: 70px; align-items: start; }
.testimonial-card { position: relative; grid-column: span 4; min-height: 100%; display: flex; flex-direction: column; padding: 38px 34px 32px; background: linear-gradient(145deg, rgba(26, 45, 62, .76), rgba(7, 16, 25, .96)); border: 1px solid rgba(255, 255, 255, .11); box-shadow: 0 24px 60px rgba(0, 0, 0, .2); transition: transform .5s cubic-bezier(.2, .7, .2, 1), border-color .4s ease, box-shadow .5s ease; }
.testimonial-card::after { content: ""; position: absolute; inset: 9px; border: 1px solid rgba(197, 138, 50, .12); pointer-events: none; }
.testimonial-card:hover { transform: translateY(-7px); border-color: rgba(197, 138, 50, .52); box-shadow: 0 34px 80px rgba(0, 0, 0, .3); }
.quote-mark { position: relative; z-index: 1; height: 48px; color: var(--amber); font-family: Georgia, serif; font-size: 76px; line-height: .85; }
.testimonial-card blockquote { position: relative; z-index: 1; flex: 1; margin: 22px 0 30px; }
.testimonial-card blockquote p { color: #d0d7db; font-family: var(--font-bodoni-moda), "Times New Roman", serif; font-size: 17px; font-weight: 400; line-height: 1.62; margin: 0 0 19px; }
.testimonial-card blockquote p:last-child { margin-bottom: 0; }
.testimonial-attribution { position: relative; z-index: 1; display: grid; gap: 5px; padding: 22px 0 0; background: transparent; border-top: 1px solid rgba(197, 138, 50, .38); }
.testimonial-attribution strong { color: var(--white); font-family: var(--font-bodoni-moda), "Times New Roman", serif; font-size: 22px; font-weight: 400; }
.testimonial-attribution span { color: var(--amber); text-transform: uppercase; letter-spacing: .13em; font-size: 9px; font-weight: 650; }
.testimonial-signoff { display: flex; justify-content: space-between; gap: 24px; margin-top: 42px; padding-top: 24px; border-top: 1px solid rgba(255, 255, 255, .1); text-transform: uppercase; letter-spacing: .16em; font-size: 9px; }
.testimonial-signoff span { color: #89969e; }
.testimonial-signoff strong { color: var(--amber); font-weight: 650; }
@media (max-width: 820px) { .testimonial-card { grid-column: span 6; } .testimonial-card:last-child { grid-column: 4 / span 6; } }
@media (max-width: 540px) { .testimonial-grid { grid-template-columns: 1fr; gap: 18px; margin-top: 48px; } .testimonial-card, .testimonial-card:last-child { grid-column: auto; padding: 32px 27px 28px; } .testimonial-card blockquote p { font-size: 16px; } .testimonial-signoff { display: grid; } }
