:root {
	--np-transition-duration: 0.25s;
}

html {
	font-size: 16px;
}

/* Desktop breakpoint */
@media (max-width: 1299.98px) {
	html {
		font-size: 15px;
	}
}
/* Tablet breakpoint */
@media (max-width: 1024.98px) {
	html {
		font-size: 14px;
	}
}
/* Mobile breakpoint */
@media (max-width: 767.98px) {
	html {
		font-size: 13px;
	}
}

html {
	scroll-behavior: smooth;
}

a {
	transition: color var(--np-transition-duration), border-color var(--np-transition-duration);
}

body p:only-child {
	margin-bottom: 0;
	margin-block-end: 0;
}

body .hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

h2, h3, h4, h5, h6 {
	text-wrap-style: balance;
}
p, li {
	text-wrap-style: pretty;
}

footer #services-menu a, #header-logo {
  pointer-events: none;
  cursor: default;
}