/* Inner-page extras only. Shared tokens live in style.css. */

/* Visual heroes were padded for an overlay header; homepage already does this
   via .is-home. Apply the same treatment whenever a full-bleed page hero exists. */
body:has(.page-hero.has-visual) .site-header {
  position: fixed;
  left: 0;
  right: 0;
  background: transparent;
  backdrop-filter: none;
}

body:has(.page-hero.has-visual) .site-header.is-scrolled,
body:has(.page-hero.has-visual).nav-locked .site-header {
  background: rgba(6, 8, 15, 0.88);
  backdrop-filter: blur(20px);
}

.page-hero.has-visual {
  min-height: min(58vh, 28rem);
}

.contact-aside {
  display: grid;
  gap: 1rem;
}

.contact-aside .btn-whatsapp {
  width: 100%;
}

.contact-aside .visual-frame {
  min-height: 12rem;
}

.related-visual .media-card__image {
  aspect-ratio: 16 / 9;
}

.split-visual--copy-first {
  align-items: center;
}

@media (max-width: 699px) {
  .page-hero.has-visual {
    min-height: 20rem;
  }

  .contact-aside .visual-frame {
    max-height: 14rem;
  }
}

@media (min-width: 700px) {
  .work-grid--folio {
    grid-template-columns: 1.3fr 1fr;
    grid-template-rows: auto auto;
  }

  .work-grid--folio .work-card--featured {
    grid-row: span 2;
    grid-template-rows: 1fr auto;
  }

  .work-grid--folio .work-card--featured .work-card__media {
    min-height: 0;
    height: 100%;
    aspect-ratio: auto;
  }
}

@media (min-width: 960px) {
  .work-grid--folio {
    grid-template-columns: 1.3fr 1fr;
  }

  .contact-aside .visual-frame {
    min-height: 16rem;
  }
}
