/* Notable Projects — isecinc replica: full-width image band + a separate white details box
   (project-slider-wrap) pulled up over the image's lower-left. White space above separates it
   from the hero. */
.np { position: relative; margin-top: clamp(2.5rem, 1.5rem + 3vw, 5rem); padding-bottom: clamp(2rem, 1rem + 3vw, 4rem); background: #fff; color: var(--color-ink); }

/* image band (the project images, cross-faded) */
.np__images { position: relative; width: 100%; height: clamp(360px, 20rem + 18vw, 700px); background: #1d1d1b; overflow: hidden; }
.np__image { position: absolute; inset: 0; background-size: cover; background-position: center; opacity: 0; transition: opacity .6s ease; }
.np__image.is-active { opacity: 1; }

/* white square box, pulled up to overlap the image (isecinc .project-slider-wrap) */
.np__container { position: relative; z-index: 2; }
.np__box { max-width: 500px; margin-top: clamp(-260px, -16vw, -150px); padding: clamp(1.75rem, 1.2rem + 1.6vw, 2.5rem); background: linear-gradient(to bottom, rgba(255,255,255,.88) 0%, #fff 220px); box-shadow: 0 30px 64px rgba(0,0,0,.22); }

.np__head { display: flex; align-items: center; justify-content: space-between; gap: .75rem 1rem; flex-wrap: wrap; margin-bottom: 1.25rem; }
.np__heading { margin: 0; font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); font-weight: var(--fw-bold); color: var(--color-ink); }
.np__dots { display: flex; gap: .4rem; }
.np__dot { background: none; border: 0; padding: .2rem .25rem; font-family: inherit; font-size: .8rem; font-weight: var(--fw-semibold); letter-spacing: .04em; color: rgba(29,29,27,.4); cursor: pointer; transition: color .2s ease; }
.np__dot:hover { color: var(--color-ink); }
.np__dot[aria-selected="true"] { color: var(--color-accent); }

.np__details .flickity-viewport { overflow: hidden; }
.np__detail { min-width: 100%; }
.np__title { margin: 0; font-size: clamp(1.4rem, 1.1rem + 1.2vw, 2rem); font-weight: var(--fw-bold); line-height: 1.15; color: var(--color-ink); }
.np__rows { margin: 1rem 0 0; }
.np__row { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding: .6rem 0; border-top: 1px solid rgba(29,29,27,.14); }
.np__row dt { margin: 0; font-size: .7rem; font-weight: var(--fw-semibold); text-transform: uppercase; letter-spacing: .1em; color: var(--color-ink); }
.np__row dd { margin: 0; text-align: right; font-size: .9rem; color: #555; }
.np__btn { display: inline-flex; align-items: center; justify-content: center; height: 48px; margin-top: 1.5rem; padding: 0 32px; background: var(--color-ink); color: #fff; font-size: .75rem; font-weight: 500; text-transform: uppercase; letter-spacing: 2px; transition: background .25s ease; }
.np__btn:hover { background: var(--color-accent); }

@media (max-width: 767px) {
	.np__images { height: 300px; }
	.np__box { margin-top: 0; max-width: 100%; box-shadow: none; padding-inline: 0; background: #fff; }
}
