/* Projects, services and publications structural redesign, phase 1. */

.nsv85-projects-hero,
.nsv80-hero { padding-top: 28px !important; padding-bottom: 76px !important; background: #f7f4ee !important; }
.nsv85-projects-hero__panel,
.nsv80-hero__panel {
	border-radius: 28px !important;
	background: radial-gradient(circle at 92% 5%,rgba(213,173,82,.17),transparent 25rem),linear-gradient(135deg,#06464d,#08737a) !important;
	padding: 48px !important;
	box-shadow: 0 24px 70px rgba(16,47,52,.14) !important;
}
.nsv85-projects-hero__copy h1,
.nsv80-hero__copy h1 { max-width: 820px !important; color: #fff !important; font-size: clamp(43px,4.4vw,64px) !important; line-height: 1 !important; }
.nsv85-projects-hero__lead,
.nsv80-hero__copy > p { max-width: 720px !important; color: rgba(255,255,255,.75) !important; font-size: 15px !important; line-height: 1.65 !important; }
.nsv85-projects-hero__steps,
.nsv80-hero__benefits { gap: 7px !important; }
.nsv85-projects-hero__steps span,
.nsv80-hero__benefits span { border-color: rgba(255,255,255,.16) !important; background: rgba(255,255,255,.08) !important; color: rgba(255,255,255,.82) !important; }
.nsv85-projects-hero__aside,
.nsv80-hero__summary { border-color: rgba(255,255,255,.18) !important; background: rgba(255,255,255,.09) !important; box-shadow: none !important; backdrop-filter: blur(14px); }
.nsv85-projects-hero__actions,
.nsv80-hero__actions { margin-top: 25px !important; }

.nsv85-project-filter-wrap,
.nsv80-filter-wrap { position: relative; z-index: 4; margin-top: -48px !important; }
.nsv85-project-filter,
.nsv80-filter { border: 1px solid rgba(16,47,52,.11) !important; border-radius: 22px !important; background: #fff !important; padding: 22px !important; box-shadow: 0 22px 60px rgba(16,47,52,.11) !important; }
.nsv85-project-results,
.nsv80-folio-results,
.nsv80-page-results { padding-top: 64px !important; padding-bottom: 84px !important; }
.nsv85-section-heading,
.nsv80-section-heading { margin-bottom: 28px !important; }
.nsv85-section-heading h2,
.nsv80-section-heading h2 { font-size: clamp(34px,3.4vw,50px) !important; line-height: 1.03 !important; }

.nsv85-request-grid,
.nsv80-folio-grid,
.nsv80-article-grid { gap: 22px !important; }
.nsv85-request-card,
.nsv80-service-card,
.nsv80-article-card { border-radius: 22px !important; border-color: rgba(16,47,52,.1) !important; box-shadow: 0 16px 42px rgba(16,47,52,.08) !important; }
.nsv85-request-card__excerpt,
.nsv80-service-card__text,
.nsv80-article-card__excerpt { display: -webkit-box !important; max-height: 70px !important; overflow: hidden !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 3 !important; }
.nsv85-request-card__facts { margin-top: 18px !important; }
.nsv85-request-card__footer,
.nsv80-service-card__bottom,
.nsv80-article-card__footer { border-top-color: rgba(16,47,52,.1) !important; }
.nsv80-service-card__media,
.nsv80-article-card__media { aspect-ratio: 16/10 !important; }
.nsv80-service-card__media img,
.nsv80-article-card__media img { width: 100% !important; height: 100% !important; object-fit: cover !important; }

@media (max-width: 767px) {
	.nsv85-projects-hero,
	.nsv80-hero { padding-top: 14px !important; padding-bottom: 52px !important; }
	.nsv85-projects-hero__panel,
	.nsv80-hero__panel { display: block !important; border-radius: 22px !important; padding: 28px 21px !important; }
	.nsv85-projects-hero__copy h1,
	.nsv80-hero__copy h1 { font-size: 38px !important; line-height: 1.02 !important; }
	.nsv85-projects-hero__lead,
	.nsv80-hero__copy > p { font-size: 14px !important; line-height: 1.55 !important; }
	.nsv85-projects-hero__aside,
	.nsv80-hero__summary { display: none !important; }
	.nsv85-projects-hero__steps,
	.nsv80-hero__benefits { display: none !important; }
	.nsv85-projects-hero__actions,
	.nsv80-hero__actions { display: grid !important; grid-template-columns: 1fr !important; gap: 8px !important; }
	.nsv85-projects-hero__actions a,
	.nsv80-hero__actions a { width: 100% !important; }
	.nsv85-project-filter-wrap,
	.nsv80-filter-wrap { margin-top: -28px !important; }
	.nsv85-project-filter,
	.nsv80-filter { grid-template-columns: 1fr !important; border-radius: 18px !important; padding: 16px !important; }
	.nsv85-category-bar,
	.nsv81-category-picker { margin-top: 12px !important; }
	.nsv85-project-results,
	.nsv80-folio-results,
	.nsv80-page-results { padding-top: 48px !important; padding-bottom: 62px !important; }
	.nsv85-section-heading,
	.nsv80-section-heading { display: block !important; margin-bottom: 22px !important; }
	.nsv85-section-heading h2,
	.nsv80-section-heading h2 { font-size: 34px !important; }
	.nsv85-section-heading > p,
	.nsv80-section-heading > p { display: none !important; }
	.nsv85-request-grid,
	.nsv80-folio-grid,
	.nsv80-article-grid { grid-template-columns: 1fr !important; gap: 16px !important; }
	.nsv85-request-card__facts { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
	.nsv85-request-card__footer,
	.nsv80-service-card__bottom,
	.nsv80-article-card__footer { align-items: stretch !important; flex-direction: column !important; gap: 14px !important; }
	.nsv85-request-card__footer a,
	.nsv80-service-card__bottom a,
	.nsv80-article-card__footer a { width: 100% !important; }
}
