:root {
  --nl-logo-h: 180px;
  --pk-font-sans: "Montserrat", "Segoe UI", system-ui, sans-serif;
  --pk-orange-text: #c4540f;
  --pk-orange-btn: #c4540f;
  --pk-orange-btn-hover: #a8460b;
}

.pk-eyebrow {
  color: var(--pk-orange-text);
}

.pk-eyebrow--on-deep {
  color: var(--pk-on-deep);
}

.pk-btn--accent {
  background: var(--pk-orange-btn);
}

.pk-btn--accent:hover {
  background: var(--pk-orange-btn-hover);
}

.nl-timeline strong {
  color: var(--pk-orange-text);
}

body {
  padding: var(--pk-sheet-pad);
}

ol,
dl {
  margin: 0;
  padding: 0;
  list-style: none;
}

.nl-span-all {
  grid-column: 1 / -1;
}

.nl-skip {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 50;
  padding: 10px 16px;
  border-radius: var(--pk-r-pill);
  background: var(--pk-deep);
  color: #fff;
  font-weight: 600;
  transform: translateY(-200%);
}

.nl-skip:focus {
  transform: none;
}

.pk-page {
  overflow: clip;
}

.nl-topbar {
  background: var(--pk-deep);
  color: var(--pk-on-deep-muted);
  font-size: var(--pk-fs-micro);
}

.nl-topbar__in {
  display: flex;
  gap: var(--pk-s-4);
  align-items: center;
  justify-content: space-between;
  min-height: 38px;
}

.nl-topbar__place {
  display: inline-flex;
  gap: var(--pk-s-2);
  align-items: center;
}

.nl-topbar__links {
  display: flex;
  gap: var(--pk-s-5);
  align-items: center;
}

.nl-topbar a {
  font-weight: 500;
  transition: color var(--pk-dur) var(--pk-ease);
}

.nl-topbar a:hover {
  color: #fff;
}

.pk-page > .nl-header,
.pk-page > main {
  margin-top: 0;
}

.nl-header {
  background: #fff;
  box-shadow: 0 1px 0 var(--pk-line);
}

.nl-bar {
  padding-block: var(--pk-s-2);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: var(--pk-s-4);
  align-items: center;
  min-height: 80px;
}

.nl-brand {
  display: inline-flex;
  grid-column: 2;
  grid-row: 1;
  align-items: center;
}

.nl-brand__logo {
  width: auto;
  height: var(--nl-logo-h);
  aspect-ratio: 1200 / 896;
  border-radius: 10px;
}

.nl-nav {
  display: contents;
}

.nl-nav__list {
  display: flex;
  grid-row: 1;
  gap: 2px;
}

.nl-nav__list--left {
  grid-column: 1;
  justify-content: flex-end;
}

.nl-nav__list--right {
  grid-column: 3;
  justify-content: flex-start;
}

.nl-nav__list a {
  display: block;
  padding: 10px 12px;
  border-radius: var(--pk-r-pill);
  font-size: var(--pk-fs-small);
  font-weight: 500;
  white-space: nowrap;
  transition:
    background-color var(--pk-dur) var(--pk-ease),
    color var(--pk-dur) var(--pk-ease);
}

.nl-nav__list a:hover {
  background: var(--pk-sage-soft);
  color: var(--pk-deep);
}

.nl-nav__list a[aria-current="page"] {
  background: var(--pk-deep);
  color: #fff;
}

main > * + * {
  margin-top: var(--pk-section-gap);
}

.pk-footer {
  border-radius: 50% 50% 24px 24px / 36px 36px 24px 24px;
}

.nl-footer-logo img {
  width: 100%;
  height: auto;
}

.nl-footer-logo {
  display: block;
  width: 228px;
  overflow: hidden;
  border-radius: var(--pk-r-md);
  background: #fff;
}

.pk-social a {
  font-size: 0.625rem;
  font-weight: 700;
  line-height: 1;
}

.pk-social a:nth-child(3) {
  font-size: 0.5rem;
}

.pk-footer__col li {
  line-height: 1.45;
}

.nl-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.nl-wrap {
  max-width: var(--pk-container);
  margin-inline: auto;
}

.nl-nowrap {
  white-space: nowrap;
}

.pk-hero__stage > .nl-hero-photo {
  position: absolute;
  z-index: 1;
  inset: 12% 8% 0 12%;
  width: 80%;
  height: 88%;
  object-fit: cover;
  object-position: 50% 30%;
  border-radius: 40% 40% 24px 24px;
}

.pk-hero__note {
  top: 0;
  right: 4%;
  white-space: nowrap;
  max-width: none;
}

.nl-pagehead {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: var(--pk-s-6);
  align-items: center;
  padding-block: var(--pk-s-5) var(--pk-s-4);
}

.nl-pagehead__media {
  position: relative;
  aspect-ratio: 5 / 4;
  border-radius: var(--pk-r-xl);
  overflow: hidden;
  background: var(--pk-sage-soft);
}

.nl-pagehead__media .nl-img {
  object-position: 50% 30%;
}

.nl-pagehead .pk-lead {
  max-width: 36em;
}

.nl-pagehead .pk-h1 {
  font-size: clamp(1.875rem, 1.3rem + 2.4vw, 2.875rem);
}

.nl-subtitle {
  font-size: clamp(1.1875rem, 1rem + 0.9vw, 1.625rem);
  font-weight: 600;
  line-height: 1.3;
  color: var(--pk-green);
}

.nl-quote {
  display: flex;
  flex-direction: column;
  gap: var(--pk-s-3);
  padding: var(--pk-s-5) var(--pk-s-6);
  border-left: 4px solid var(--pk-orange);
  border-radius: 0 var(--pk-r-md) var(--pk-r-md) 0;
  background: var(--pk-panel-2);
}

.nl-quote p {
  font-size: var(--pk-fs-lead);
  line-height: 1.6;
}

.nl-quote cite {
  font-size: var(--pk-fs-small);
  font-style: normal;
  font-weight: 600;
  color: var(--pk-muted);
}

.nl-card__body > p {
  font-size: var(--pk-fs-small);
  color: var(--pk-muted);
}

.nl-card__media.nl-card__media--wide {
  aspect-ratio: 4 / 3;
}

.nl-card__media .nl-img--cocker,
.nl-gallery .nl-img--cocker {
  object-position: 85% 78%;
}

.nl-card__media .nl-img--lab,
.nl-gallery .nl-img--lab {
  object-position: 50% 42%;
}

.nl-card__media .nl-img.nl-img--svc-train {
  object-position: 50% 66%;
}

.nl-card__media .nl-img.nl-img--svc-board {
  object-position: 50% 20%;
}

.nl-span-2 {
  grid-column: span 2;
}

.nl-two--center {
  align-items: center;
}

.nl-photo--portrait {
  min-height: 0;
  max-width: 460px;
  aspect-ratio: 4 / 5;
}

.nl-img--top {
  object-position: 50% 20%;
}

.nl-founder {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: var(--pk-s-6);
  align-items: center;
  padding: var(--pk-s-4);
  border: 1px solid var(--pk-line);
  border-radius: var(--pk-r-xl);
  background: var(--pk-panel);
}

.nl-founder__photo {
  position: relative;
  align-self: stretch;
  min-height: 360px;
  overflow: hidden;
  border-radius: var(--pk-r-lg);
}

.nl-founder__photo .nl-img {
  object-position: 50% 28%;
}

.nl-founder__body {
  padding: var(--pk-s-4) var(--pk-s-4) var(--pk-s-4) 0;
}

.nl-badges {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--pk-s-3);
}

.nl-badges li {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: var(--pk-s-3);
  border-radius: var(--pk-r-sm);
  background: #fff;
  font-size: var(--pk-fs-micro);
  line-height: 1.35;
  color: var(--pk-muted);
}

.nl-badges strong {
  font-size: var(--pk-fs-small);
  font-weight: 700;
  color: var(--pk-green);
}

.nl-docs {
  display: grid;
  gap: var(--pk-s-4);
}

.nl-docs--row {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nl-doc {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--pk-line);
  border-radius: var(--pk-r-md);
  background: #fff;
  box-shadow: var(--pk-shadow-card);
  transition:
    transform var(--pk-dur) var(--pk-ease),
    box-shadow var(--pk-dur) var(--pk-ease);
}

.nl-doc:hover {
  transform: translateY(-4px);
  box-shadow: var(--pk-shadow-lift);
}

.nl-doc img {
  width: 100%;
  height: auto;
}

.nl-doc span {
  display: block;
  padding: var(--pk-s-3) var(--pk-s-4) var(--pk-s-4);
  font-size: var(--pk-fs-small);
  line-height: 1.45;
  color: var(--pk-muted);
}

.nl-doc strong {
  display: block;
  color: var(--pk-ink);
  font-size: var(--pk-fs-title);
}

.nl-doc--poster {
  max-width: 460px;
}

.nl-gallery--tall figure {
  aspect-ratio: 3 / 4;
}

.nl-card__media .nl-img--top {
  object-position: 50% 18%;
}

.nl-gallery {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: var(--pk-s-3);
}

.nl-gallery figure {
  position: relative;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: var(--pk-r-md);
  background: var(--pk-panel-2);
}

.nl-gallery figure:first-child {
  grid-column: span 2;
  grid-row: span 2;
}

.nl-gallery figcaption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: var(--pk-s-6) var(--pk-s-3) var(--pk-s-3);
  background: linear-gradient(0deg, rgba(9, 60, 45, 0.8), transparent);
  color: #fff;
  font-size: var(--pk-fs-small);
  font-weight: 500;
  line-height: 1.3;
}

.nl-gallery--row {
  margin-top: var(--pk-s-6);
}

.nl-gallery--row figure:first-child {
  grid-column: auto;
  grid-row: auto;
}

.nl-gallery--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 0;
}

.nl-gallery--four {
  margin-top: 0;
}

.nl-gallery--three figure {
  aspect-ratio: 4 / 3;
}

.nl-dock {
  display: none;
}

.nl-mini-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--pk-s-4);
}

.nl-mini-stats li {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: var(--pk-s-4);
  border-radius: var(--pk-r-md);
  background: var(--pk-panel);
}

.nl-mini-stats strong {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.1;
  color: var(--pk-green);
}

.nl-mini-stats span {
  font-size: var(--pk-fs-micro);
  line-height: 1.4;
  color: var(--pk-muted);
}

.pk-panel--deep .pk-h2,
.pk-panel--deep .pk-h3 {
  color: #fff;
}

.pk-panel--deep .pk-checklist {
  font-size: var(--pk-fs-body);
}

.pk-btn--on-light-ghost {
  background: transparent;
  border-color: var(--pk-deep);
  color: var(--pk-deep);
}

.pk-btn--on-light-ghost:hover {
  background: var(--pk-deep);
  color: #fff;
}

.pk-btn--ghost-deep {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.5);
  color: #fff;
}

.pk-btn--ghost-deep:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: #fff;
}

.nl-prose {
  max-width: 44em;
}

.nl-prose > * + * {
  margin-top: var(--pk-s-4);
}

.nl-prose h3 {
  margin-top: var(--pk-s-5);
}

.nl-prose p {
  color: var(--pk-muted);
}

.nl-prose strong {
  color: var(--pk-ink);
  font-weight: 600;
}

.nl-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: var(--pk-s-5);
}

.nl-stats li {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: var(--pk-s-5);
  border-radius: var(--pk-r-md);
  background: #fff;
  box-shadow: var(--pk-shadow-card);
}

.nl-stats strong {
  font-size: clamp(1.75rem, 1.3rem + 1.4vw, 2.375rem);
  font-weight: 700;
  line-height: 1.1;
  color: var(--pk-green);
}

.nl-stats span {
  font-size: var(--pk-fs-small);
  line-height: 1.45;
  color: var(--pk-muted);
}

.nl-timeline {
  position: relative;
  display: grid;
  gap: var(--pk-s-5);
  padding-left: var(--pk-s-6);
}

.nl-timeline::before {
  content: "";
  position: absolute;
  top: 8px;
  bottom: 8px;
  left: 7px;
  width: 2px;
  background: var(--pk-sage);
}

.nl-timeline li {
  position: relative;
}

.nl-timeline li::before {
  content: "";
  position: absolute;
  top: 6px;
  left: calc(var(--pk-s-6) * -1);
  width: 16px;
  height: 16px;
  border: 4px solid var(--pk-green);
  border-radius: 50%;
  background: #fff;
}

.nl-timeline strong {
  display: block;
  font-size: var(--pk-fs-h3);
  font-weight: 700;
  color: var(--pk-orange);
}

.nl-timeline p {
  max-width: 38em;
  color: var(--pk-muted);
}

.nl-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--pk-line);
  border-radius: var(--pk-r-md);
  background: #fff;
  box-shadow: var(--pk-shadow-card);
  transition:
    transform var(--pk-dur) var(--pk-ease),
    box-shadow var(--pk-dur) var(--pk-ease);
}

.nl-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--pk-shadow-lift);
}

.nl-card__media {
  position: relative;
  aspect-ratio: 4 / 5;
  background: var(--pk-panel-2);
}

.nl-card__media .nl-img {
  object-position: 50% 25%;
}

.nl-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: var(--pk-s-3);
  padding: var(--pk-s-4);
}

.nl-card__body .nl-price {
  margin-top: auto;
}

.nl-chip {
  align-self: flex-start;
  display: inline-flex;
  padding: 4px 10px;
  border-radius: var(--pk-r-pill);
  background: var(--pk-sage-soft);
  color: var(--pk-deep);
  font-size: var(--pk-fs-micro);
  font-weight: 600;
  line-height: 1.3;
}

.nl-chip--float {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  background: var(--pk-deep);
  color: #fff;
}

.nl-facts {
  display: grid;
  gap: 6px;
  font-size: var(--pk-fs-small);
}

.nl-facts div {
  display: flex;
  gap: var(--pk-s-3);
  justify-content: space-between;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--pk-line);
}

.nl-facts dt {
  color: var(--pk-muted);
}

.nl-facts dd {
  margin: 0;
  font-weight: 500;
  text-align: right;
}

.nl-price {
  display: flex;
  flex-wrap: wrap;
  gap: 2px var(--pk-s-3);
  align-items: baseline;
}

.nl-price strong {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--pk-ink);
}

.nl-price span {
  font-size: var(--pk-fs-small);
  color: var(--pk-muted);
}

.nl-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--pk-s-5);
  counter-reset: step;
}

.nl-steps li {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--pk-s-2);
  padding: var(--pk-s-5);
  border-radius: var(--pk-r-md);
  background: #fff;
  box-shadow: var(--pk-shadow-card);
  counter-increment: step;
}

.nl-steps li::before {
  content: counter(step);
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: var(--pk-s-2);
  border-radius: 50%;
  background: var(--pk-green);
  color: #fff;
  font-weight: 700;
}

.nl-steps p {
  font-size: var(--pk-fs-small);
  color: var(--pk-muted);
}

.nl-steps--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.nl-box {
  display: flex;
  flex-direction: column;
  gap: var(--pk-s-2);
  padding: var(--pk-s-5);
  border-radius: var(--pk-r-md);
  background: #fff;
  box-shadow: var(--pk-shadow-card);
}

.nl-box p {
  font-size: var(--pk-fs-small);
  color: var(--pk-muted);
}

.nl-box__icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin-bottom: var(--pk-s-2);
  border-radius: 50%;
  background: var(--pk-sage-soft);
  color: var(--pk-green);
  font-size: 1.25rem;
}

.nl-box--flat {
  background: var(--pk-panel);
  box-shadow: none;
}

.nl-epithet {
  font-family: var(--pk-font-script);
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1;
  color: var(--pk-green);
}

.pk-checklist--light {
  gap: 10px;
  font-size: var(--pk-fs-body);
}

.pk-checklist--light .pk-check {
  width: 22px;
  height: 22px;
  background: var(--pk-green);
  color: #fff;
}

.pk-checklist--light li {
  align-items: flex-start;
}

.pk-checklist--light .pk-check {
  margin-top: 1px;
}

.pk-checklist--warn .pk-check {
  background: var(--pk-orange);
}

.nl-callout {
  display: flex;
  gap: var(--pk-s-4);
  align-items: flex-start;
  padding: var(--pk-s-5);
  border-radius: var(--pk-r-lg);
  background: var(--pk-panel-2);
}

.nl-callout__icon {
  display: grid;
  flex: none;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #fff;
  color: var(--pk-orange);
  font-size: 1.25rem;
}

.nl-callout p {
  color: var(--pk-muted);
}

.nl-callout strong {
  color: var(--pk-ink);
}

.nl-faq {
  display: grid;
  gap: var(--pk-s-3);
  max-width: 52em;
}

.nl-faq details {
  border: 1px solid var(--pk-line);
  border-radius: var(--pk-r-md);
  background: #fff;
}

.nl-faq summary {
  display: flex;
  gap: var(--pk-s-4);
  align-items: center;
  justify-content: space-between;
  padding: var(--pk-s-4) var(--pk-s-5);
  font-weight: 600;
  cursor: pointer;
  list-style: none;
}

.nl-faq summary::-webkit-details-marker {
  display: none;
}

.nl-faq summary::after {
  content: "+";
  display: grid;
  flex: none;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--pk-sage-soft);
  color: var(--pk-green);
  font-size: 1.125rem;
  line-height: 1;
}

.nl-faq details[open] summary::after {
  content: "–";
}

.nl-faq details p {
  padding: 0 var(--pk-s-5) var(--pk-s-4);
  color: var(--pk-muted);
}

.nl-contacts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--pk-s-5);
}

.nl-contact {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: var(--pk-s-5);
  border-radius: var(--pk-r-md);
  background: #fff;
  box-shadow: var(--pk-shadow-card);
  transition:
    transform var(--pk-dur) var(--pk-ease),
    box-shadow var(--pk-dur) var(--pk-ease);
}

a.nl-contact:hover {
  transform: translateY(-4px);
  box-shadow: var(--pk-shadow-lift);
}

.nl-contact strong {
  font-size: var(--pk-fs-h3);
  font-weight: 600;
  word-break: break-word;
}

.nl-contact .pk-micro {
  font-size: var(--pk-fs-small);
}

.nl-greet {
  display: flex;
  flex-direction: column;
  gap: var(--pk-s-3);
}

.nl-greet__photo {
  position: relative;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border-radius: var(--pk-r-md);
  background: var(--pk-panel-2);
}

.nl-greet p {
  font-size: var(--pk-fs-small);
  color: var(--pk-muted);
}

.nl-greet strong {
  display: block;
  color: var(--pk-ink);
  font-size: var(--pk-fs-title);
}

.nl-track {
  grid-auto-columns: min(78%, 250px);
  scrollbar-color: var(--pk-sage) transparent;
}

.nl-track .nl-story {
  display: flex;
  flex-direction: column;
  gap: var(--pk-s-3);
  justify-content: center;
  padding: var(--pk-s-5);
  border-radius: var(--pk-r-md);
  background: var(--pk-deep);
  color: #fff;
}

.nl-track .nl-story p {
  color: var(--pk-on-deep-muted);
}

.nl-track .nl-story strong {
  font-size: var(--pk-fs-h3);
}

.pk-tile__media.nl-round {
  border-radius: 50%;
  overflow: hidden;
  aspect-ratio: 1;
}

.pk-tile__media.nl-round img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 25%;
  border-radius: 50%;
}

.pk-feature__stage .nl-img,
.pk-cta__media .nl-img,
.pk-promise__media .nl-img {
  object-position: 50% 30%;
}

.pk-promise__media .nl-img--family {
  object-position: 50% 12%;
}

.pk-promise__media {
  min-height: 320px;
}

.pk-seal {
  font-size: 0.9375rem;
  font-weight: 700;
}

.pk-cta__media {
  min-height: 220px;
}

.pk-cta__media .nl-img {
  object-position: 50% 48%;
}

.pk-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--pk-s-3);
  margin-top: var(--pk-s-2);
}

.nl-section-panel {
  padding: var(--pk-panel-pad);
  border-radius: var(--pk-r-xl);
  background: var(--pk-panel);
}

.nl-two {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--pk-s-6);
  align-items: start;
}

.nl-photo {
  position: relative;
  min-height: 320px;
  overflow: hidden;
  border-radius: var(--pk-r-lg);
  background: var(--pk-panel-2);
}

.nl-photo--tall {
  min-height: 420px;
}

.nl-photo--small {
  min-height: 0;
  max-width: 320px;
  aspect-ratio: 1;
}

.nl-note {
  font-size: var(--pk-fs-small);
  color: var(--pk-muted);
}

.nl-note--after {
  margin-top: var(--pk-s-5);
}

.nl-grid-tight {
  --pk-gap: 16px;
}

@media (max-width: 1199px) {
  :root {
    --nl-logo-h: 101px;
  }

  .nl-nav {
    display: none;
  }
}

@media (max-width: 959px) {
  .nl-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nl-mini-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pk-grid--2,
  .nl-pagehead,
  .nl-two {
    grid-template-columns: minmax(0, 1fr);
  }

  .nl-steps,
  .nl-steps--4,
  .nl-contacts {
    grid-template-columns: minmax(0, 1fr);
  }

  .pk-hero__stage > .nl-hero-photo {
    inset: 4% 6% 0 6%;
    width: 88%;
  }


  .nl-founder {
    grid-template-columns: minmax(0, 1fr);
  }

  .nl-founder__photo {
    min-height: 300px;
  }

  .nl-founder__body {
    padding: 0 var(--pk-s-3) var(--pk-s-3);
  }

  .nl-badges {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 639px) {
  body {
    padding-bottom: 84px;
  }

  .nl-dock {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 40;
    display: flex;
    gap: var(--pk-s-2);
    padding: 10px var(--pk-s-4) calc(10px + env(safe-area-inset-bottom));
    background: rgba(255, 255, 255, 0.94);
    backdrop-filter: blur(10px);
    box-shadow: 0 -1px 0 var(--pk-line), 0 -10px 24px rgba(16, 48, 40, 0.08);
  }

  .nl-dock .pk-btn {
    flex: 1;
    padding: 0 12px;
  }

  .nl-docs--row {
    grid-template-columns: minmax(0, 1fr);
  }

  .nl-span-2 {
    grid-column: auto;
  }


  .nl-pagehead__media {
    aspect-ratio: 4 / 3;
  }

  .nl-callout {
    flex-direction: column;
  }

  .nl-faq summary {
    padding: var(--pk-s-4);
  }

  .pk-cta__actions .pk-btn {
    width: 100%;
  }
}

@media (min-width: 960px) {
  .nl-two--docs {
    grid-template-columns: minmax(0, 0.6fr) minmax(0, 1.4fr);
  }
}

.nl-span-2 {
  align-self: center;
}

.nl-cards-center {
  display: flex;
  flex-wrap: wrap;
  gap: var(--pk-gap, 24px);
  justify-content: center;
  align-items: stretch;
}

.nl-cards-center > .nl-card {
  width: calc((100% - 3 * var(--pk-gap, 24px)) / 4 * 1.69);
}

.nl-cards-center > .nl-card .nl-card__media {
  aspect-ratio: 16 / 9;
}

@media (max-width: 959px) {
  .nl-cards-center > .nl-card {
    width: calc((100% - var(--pk-gap, 24px)) / 2);
  }
}

@media (max-width: 639px) {
  .nl-cards-center > .nl-card {
    width: 100%;
  }
}

.nl-card__media--sq {
  aspect-ratio: 1;
  overflow: hidden;
}

.nl-card__media--sq .nl-img {
  object-position: 50% 30%;
}

.nl-card__media--sq .nl-img.nl-img--delia {
  transform: scale(1.05);
  transform-origin: 50% 0;
}

.nl-card__media--sq .nl-img.nl-img--beyti {
  object-position: 40% 50%;
}

.nl-card__media--sq .nl-img.nl-img--henrich {
  object-position: 50% 55%;
}

.nl-cm {
  position: fixed;
  inset: 0;
  z-index: 900;
  display: grid;
  place-items: center;
  padding: var(--pk-s-4);
}

.nl-cm[hidden] {
  display: none;
}

.nl-cm__bg {
  position: absolute;
  inset: 0;
  background: rgba(14, 17, 19, 0.72);
}

.nl-cm__card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--pk-s-3);
  width: min(440px, 100%);
  max-height: calc(100vh - 32px);
  max-height: calc(100dvh - 32px);
  padding: var(--pk-s-6) var(--pk-s-5) var(--pk-s-5);
  overflow-y: auto;
  border-radius: var(--pk-r-xl);
  background: #fff;
  box-shadow: 0 0 0 5px #fff, 0 24px 60px rgba(14, 17, 19, 0.5);
}

.nl-cm__card .pk-eyebrow {
  margin: 0;
}

.nl-cm__x {
  position: absolute;
  top: 12px;
  right: 12px;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--pk-sage-soft);
  color: var(--pk-ink);
  cursor: pointer;
}

.nl-cm__x:hover {
  background: #e3dfdf;
}

.nl-cm__x:focus-visible {
  outline: 3px solid #e3a410;
  outline-offset: 2px;
}

.nl-cm__actions {
  display: grid;
  gap: var(--pk-s-2);
  margin-top: var(--pk-s-2);
}

.nl-cm__actions .pk-btn {
  justify-content: center;
  box-shadow: none;
}

.nl-cm__row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--pk-s-2);
}

.nl-more {
  display: flex;
  justify-content: center;
  margin-top: var(--pk-s-6);
}

.nl-zoom-box,
.nl-zoom {
  cursor: zoom-in;
}

.nl-zoom:focus-visible {
  outline: 3px solid #e3a410;
  outline-offset: 3px;
}

.nl-lb-open,
.nl-lb-open body {
  overflow: hidden;
}

.nl-lb {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  touch-action: none;
}

.nl-lb[hidden] {
  display: none;
}

.nl-lb__bg {
  position: absolute;
  inset: 0;
  background: rgba(14, 17, 19, 0.92);
}

.nl-lb__fig {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: center;
  max-width: 100vw;
  margin: 0;
  padding: 64px 16px 20px;
}

.nl-lb__img {
  display: block;
  width: auto;
  height: auto;
  max-width: min(calc(100vw - 32px), 1400px);
  max-height: calc(100vh - 150px);
  max-height: calc(100dvh - 150px);
  object-fit: contain;
  border-radius: 14px;
  box-shadow: 0 0 0 5px #fff;
  background: #2a2f33;
}

.nl-lb.is-loading .nl-lb__img {
  opacity: 0.35;
}

.nl-lb__cap {
  max-width: 40em;
  color: #fff;
  font-size: 0.9375rem;
  line-height: 1.4;
  text-align: center;
}

.nl-lb__count {
  position: absolute;
  top: 24px;
  left: 20px;
  color: rgba(255, 255, 255, 0.85);
  font-size: 0.9375rem;
  font-weight: 600;
}

.nl-lb__btn {
  position: absolute;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.45);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.14);
  color: #fff;
  cursor: pointer;
}

.nl-lb__btn:hover {
  background: rgba(255, 255, 255, 0.26);
  color: #ffd966;
}

.nl-lb__btn:focus-visible {
  outline: 3px solid #e3a410;
  outline-offset: 2px;
}

.nl-lb__btn[hidden],
.nl-lb__cap[hidden],
.nl-lb__count[hidden] {
  display: none;
}

.nl-lb__close {
  top: 12px;
  right: 12px;
}

.nl-lb__prev {
  top: 50%;
  left: 12px;
  transform: translateY(-50%);
}

.nl-lb__next {
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
}

@media (max-width: 639px) {
  .nl-lb__fig {
    padding: 64px 12px 84px;
  }

  .nl-lb__img {
    max-height: calc(100vh - 190px);
    max-height: calc(100dvh - 190px);
  }

  .nl-lb__prev,
  .nl-lb__next {
    top: auto;
    bottom: 16px;
    transform: none;
  }

  .nl-lb__prev {
    left: calc(50% - 64px);
  }

  .nl-lb__next {
    right: calc(50% - 64px);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .nl-lb__img {
    transition: opacity 160ms ease;
  }
}

.nl-card__media .nl-img.nl-img--cocker-solo {
  object-position: 50% 42%;
}
